{"json_modified": "2016-07-06T08:17:01.607559", "uuid": "31fe2143-4694-413c-a9ed-2d1ac3206f76", "title": "Writing forward-compatible websites", "url": "/en-US/docs/Web/Guide/Writing_forward-compatible_websites", "tags": ["CSS", "Compatibility", "HTML", "JavaScript", "DOM", "Web Development"], "translations": [{"uuid": "1998c037-cdb6-4f47-8661-1fbf8175b960", "title": "D\u00e9velopper des sites \u00e0 compatibilit\u00e9 descendante", "url": "/fr/docs/D%C3%A9veloppement_Web/D%C3%A9velopper_des_sites_%C3%A0_compatibilit%C3%A9_descendante", "tags": ["NeedsEditorialReview", "NeedsTechnicalReview"], "summary": "", "localization_tags": [], "locale": "fr", "last_edit": "2012-01-11T20:23:38", "review_tags": []}, {"uuid": "abb41a5c-30aa-4963-b0bf-7807fd8dad3d", "title": "Writing forward-compatible websites", "url": "/ja/docs/Web_Development/Writing_forward-compatible_websites", "tags": ["CSS", "Compatibility", "HTML", "JavaScript", "DOM", "Web Development"], "summary": "\u3053\u306e\u30da\u30fc\u30b8\u3067\u306f\u3001\u65b0\u3057\u3044\u30d0\u30fc\u30b8\u30e7\u30f3\u306e\u30d6\u30e9\u30a6\u30b6\u304c\u516c\u958b\u3055\u308c\u3066\u3082\u58ca\u308c\u308b\u3053\u3068\u306e\u306a\u3044 Web \u30b5\u30a4\u30c8\u3092\u8a18\u8ff0\u3059\u308b\u65b9\u6cd5\u3092\u8aac\u660e\u3057\u307e\u3059\u3002
\n \u3053\u308c\u306f\u30a4\u30f3\u30c8\u30e9\u30cd\u30c3\u30c8\u3084\u516c\u8846\u5411\u3051\u3067\u306a\u3044 Web \u30b5\u30a4\u30c8\u3067\u7279\u306b\u91cd\u8981\u3067\u3059\u3002\u79c1\u305f\u3061\u304c\u3042\u306a\u305f\u306e\u30b3\u30fc\u30c9\u3092\u898b\u308b\u3053\u3068\u304c\u3067\u304d\u306a\u3044\u306e\u3067\u3001\u305d\u308c\u304c\u58ca\u308c\u3066\u3044\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3067\u304d\u306a\u3044\u306e\u3067\u3059\u3002\u3053\u308c\u3089\u306e\u3059\u3079\u3066\u306b\u5f93\u3046\u3053\u3068\u304c\u3067\u304d\u306a\u3044\u5834\u5408\u3082\u3042\u308a\u307e\u3059\u304c\u3001\u53ef\u80fd\u306a\u9650\u308a\u591a\u304f\u306e\u4e8b\u9805\u306b\u5f93\u3046\u3053\u3068\u3067\u3001Web \u30b5\u30a4\u30c8\u3092\u5c06\u6765\u306b\u308f\u305f\u3063\u3066\u6709\u7528\u306a\u72b6\u614b\u306b\u3059\u308b\u3053\u3068\u306e\u52a9\u3051\u306b\u306a\u308a\u307e\u3059\u3002", "localization_tags": [], "locale": "ja", "last_edit": "2013-05-06T09:29:25", "review_tags": []}, {"uuid": "195748aa-31bd-4dfe-80d7-c217347264fa", "title": "Writing forward-compatible websites", "url": "/zh-TW/docs/Web/Guide/Writing_forward-compatible_websites", "tags": [], "summary": "\u9019\u500b\u9801\u9762\u5c07\u89e3\u91cb\u5982\u4f55\u64b0\u5beb\u5728\u65b0\u7684\u700f\u89bd\u5668\u7248\u672c\u767c\u5e03\u6642\u4e0d\u6703\u906d\u53d7\u6bc0\u640d\u7684\u7db2\u9801\u3002", "localization_tags": [], "locale": "zh-TW", "last_edit": "2012-08-12T04:01:14", "review_tags": []}], "modified": "2015-09-22T07:50:42", "label": "Writing forward-compatible websites", "localization_tags": [], "locale": "en-US", "id": 3623, "last_edit": "2014-11-06T16:56:43", "summary": "This page explains how to write websites that do not break when new browser versions are released.
\n This is especially important for intranets and other non-public websites; if we can't see your code, we can't see that it broke. It's not always possible to follow all of these, but following as many of them as possible will help future-proof your website.", "sections": [{"id": "JavaScript", "title": "JavaScript"}, {"id": "Prefix_all_global_variable_access_in_onfoo_attributes_with_\u201cwindow.\u201d", "title": "Prefix all global variable access in "}, {"id": "Don't_concatenate_scripts_you_don't_control", "title": "Don't concatenate scripts you don't control"}, {"id": "Ask_the_authors_of_any_JavaScript_libraries_you_use_to_also_follow_these_guidelines", "title": "Ask the authors of any JavaScript libraries you use to also follow these guidelines"}, {"id": "Sniffing", "title": "Sniffing"}, {"id": "Sniff_for_specific_features", "title": "Sniff for specific features"}, {"id": "Don't_UA-sniff", "title": "Don't UA-sniff"}, {"id": "If_you_have_to_UA-sniff_only_sniff_for_past_browser_versions", "title": "If you have to UA-sniff, only sniff for past browser versions"}, {"id": "Don't_unnecessarily_create_separate_codepaths_for_different_browsers", "title": "Don't unnecessarily create separate codepaths for different browsers"}, {"id": "Testing", "title": "Testing"}, {"id": "Test_with_all_major_engines", "title": "Test with all major engines"}, {"id": "Browser-specific_features_and_prefixes", "title": "Browser-specific features and prefixes"}, {"id": "Don't_target_hacks_at_current_or_future_versions_of_browsers", "title": "Don't target hacks at current or future versions of browsers"}, {"id": "Avoid_depending_on_cutting-edge_nonstandard_features", "title": "Avoid depending on cutting-edge nonstandard features"}, {"id": "When_using_cutting-edge_features_(even_standard_ones)_that_are_not_universally_implemented_make_sure_to_test_fallback_paths", "title": "When using cutting-edge features (even standard ones) that are not universally implemented, make sure to test fallback paths"}, {"id": "Don't_use_vendor-prefixed_features_except_to_target_old_buggy_versions", "title": "Don't use vendor-prefixed features except to target old buggy versions"}, {"id": "Don't_use_unprefixed_versions_of_CSS_properties_or_APIs_until_at_least_one_browser_supports_them", "title": "Don't use unprefixed versions of CSS properties or APIs until at least one browser supports them"}, {"id": "Code_hygiene", "title": "Code hygiene"}, {"id": "Avoid_missing_>", "title": "Avoid missing "}, {"id": "Don't_leave_experiments_that_didn't_work_in_your_code", "title": "Don't leave experiments that didn't work in your code"}], "slug": "Web/Guide/Writing_forward-compatible_websites", "review_tags": []}