Кроссбраузерная совместимость - Cross-browser compatibility

Кроссбраузерная совместимость это способность интернет сайт или же веб приложение функционировать в разных браузеры и изящно деградировать когда функции браузера отсутствуют или отсутствуют.[не проверено в теле ]

История

Фон

История кроссбраузерности связана с историей "браузерные войны "в конце 1990-х между Netscape Navigator и Microsoft Internet Explorer а также с тем из JavaScript и JScript, первые языки сценариев, которые будут реализованы в веб-браузерах. Netscape Navigator был наиболее широко используемым веб-браузером в то время, и Microsoft лицензировала Mosaic для создания Internet Explorer 1.0. Новые версии Netscape Navigator и Internet Explorer выпускались быстрыми темпами в течение следующих нескольких лет. Из-за острой конкуренции на рынке веб-браузеров разработка этих браузеров шла быстрыми темпами, и новые функции добавлялись без какой-либо координации между поставщиками. Внедрение новых функций часто имеет приоритет над исправлением ошибок, что приводит к нестабильности браузеров, непостоянному соответствию веб-стандартам, частым сбоям и множеству дыр в безопасности.

Создание W3C и веб-стандартизации

В Консорциум World Wide Web (W3C), основанная в 1994 году для продвижения открытых стандартов для Всемирная паутина, потянул Netscape и Microsoft вместе с другими компаниями разработать стандарт для языков сценариев браузеров под названием "ECMAScript ". Первая версия стандарта была опубликована в 1997 году. Последующие выпуски JavaScript и JScript будут реализовывать стандарт ECMAScript для большей кроссбраузерности. После стандартизации ECMAScript W3C начал работу по стандартизации Объектная модель документа (DOM), который представляет собой способ представления объектов и взаимодействия с ними в HTML, XHTML и XML документы. DOM Level 0 и DOM Level 1 были представлены в 1996 и 1997 годах. В браузерах была реализована только ограниченная их поддержка, в результате несоответствующие браузеры, такие как Internet Explorer 4.x и Netscape 4.x, по-прежнему широко использовались в качестве в конце 2000 года. Стандартизация DOM стала популярной с момента появления модели DOM Level 2, которая была опубликована в 2000 году. Она представила функцию "getElementById", а также модель событий и поддержку пространств имен XML и CSS. DOM Level 3, текущий выпуск спецификации DOM, опубликованный в апреле 2004 г., добавил поддержку XPath и обработки событий клавиатуры, а также интерфейс для сериализации документов в формате XML. К 2005 году большие части W3C DOM хорошо поддерживались общими браузерами с поддержкой ECMAScript, включая Microsoft Internet Explorer, Опера, Сафари и браузеры на основе Gecko (например, Fire Fox, SeaMonkey и Камино ).[1]

Этот век

В начале века такие практики, как обнюхивание браузера были признаны непригодными для кроссбраузерного скриптинга.[2] Термин «мультибраузерность» был придуман для описания приложений, которые полагались на отслеживание браузером или делали иным образом неверные предположения о среде выполнения, которые в то время почти всегда были веб-браузерами. Термин «кроссбраузерность» приобрел в настоящее время свое общепринятое значение, поскольку приложения, которые когда-то работали в Internet Explorer 4 и Netscape Navigator 4 и с тех пор стали непригодными для использования в современных браузерах, не могут быть разумно описаны как «кроссбраузерные». В просторечии такие мультибраузерные приложения, а также фреймворки и библиотеки до сих пор называют кроссбраузерными.

Кроссбраузерная совместимость

Не путать с мультибраузерностью, кроссбраузерные приложения и веб-сайты будут стабильны в любой версии браузера. Возможность удобного просмотра сайта в разных браузерах важна для удобства использования пользователями Интернета. Веб-приложение в одном браузере ведет себя точно так, как нужно, но могут иметь другие проблемы в других браузерах. Таким образом, проблемы будут препятствовать активной функциональности приложения. Клиенты, которые ищут профессиональное приложение или веб-сайт, могут полагаться на кроссбраузерное тестирование, которое поможет клиентским приложениям получать разные результаты в разных веб-браузерах при их запуске в апплетах, Flash, запросах JavaScript и т. Д.

Рекомендации