Введение

Acid2 — это веб-страница, предназначенная для проверки функциональности веб-браузеров при отображении элементов разметки HTML, стилей CSS 2.1, изображений PNG и URI данных. Тест-страница была опубликована 13 апреля 2005 года проектом Web Standards Project. Страница тестирования Acid2 будет отображаться корректно в любом приложении, соответствующем спецификациям World Wide Web Consortium и Internet Engineering Task Force для этих технологий. Эти спецификации известны как веб-стандарты, поскольку они описывают ожидаемое поведение технологий, используемых в сети. Acid2 выявляет ошибки рендеринга в веб-браузерах и других приложениях, отображающих HTML. Названный по аналогии с «кислотным тестом» для золота, он был разработан в продолжение идеи Acid1 — сравнительно узкого теста на соответствие стандарту Cascading Style Sheets 1.0 (CSS1). Как и в случае с Acid1, приложение считается прошедшим тест, если его отображение тестовой страницы совпадает с эталонным изображением. Acid2 был разработан с особым акцентом на Microsoft Internet Explorer. Создатели Acid2 были обеспокоены тем, что Internet Explorer не следовал веб-стандартам, часто отображая веб-страницы иначе, чем другие браузеры, что заставляло веб-разработчиков тратить время на их адаптацию. Acid2 был призван побудить Microsoft привести Internet Explorer в соответствие с веб-стандартами. 31 октября 2005 года Safari 2.0.2 стал первым браузером, успешно прошедшим Acid2. За ним последовали Opera, Konqueror, Firefox и другие. С выпуском Internet Explorer 8 19 марта 2009 года последние версии всех основных настольных веб-браузеров теперь успешно проходят этот тест. После Acid2 последовал Acid3.

История

Acid2 был впервые предложен Хаконом Виумом Ли, главным техническим директором Opera Software и создателем широко используемого веб-стандарта Cascading Style Sheets. В статье от 16 марта 2005 года на CNET Ли выразил разочарование тем, что Microsoft Internet Explorer не обеспечивал должной поддержки веб-стандартов и, следовательно, не был полностью совместим с другими браузерами. Он заявил, что Acid2 станет вызовом для Microsoft при разработке Internet Explorer 7, находившегося тогда в разработке, с целью достижения более высокой степени соответствия стандартам, чем в предыдущих версиях Internet Explorer. Изначальный тест Acid1 вынудил производителей браузеров исправлять свои приложения, чтобы избежать конфуза; Ли надеялся, что Acid2 окажет аналогичное воздействие. Ли и его коллега, Ян Хиксон, создали первый черновик теста в феврале 2005 года. Ян Хиксон разработал финальную версию теста в сотрудничестве с Web Standards Project и широким веб-сообществом. Официальный релиз состоялся 13 апреля 2005 года, и в то время все веб-браузеры провалили его с треском. 23 апреля 2005 года Acid2 был обновлен для исправления ошибки, из-за которой рот отображался слишком близко к носу. После ряда жалоб тест был снова обновлен в январе 2006 года для удаления проверки непопулярных комментариев в стиле SGML, которые так и не получили широкого распространения. В браузерах, не поддерживающих комментарии в стиле SGML, исходный тест отображал слово "ERROR" в нижней части изображения лица.

Ответ Microsoft

В июле 2005 года Крис Уилсон, архитектор платформы Internet Explorer, заявил, что прохождение Acid2 не является приоритетом для Internet Explorer 7, описывая этот тест как "список желаний" функций, а не как реальную проверку соответствия стандартам. В декабре 2007 года Microsoft объявила, что все необходимые изменения для прохождения Acid2 будут доступны в Internet Explorer 8, но эти изменения не будут включены по умолчанию, что означало, что IE8 фактически не будет проходить тест. Опасения были связаны с тем, что переход к новому поведению вызовет слишком много проблем на веб-страницах, ожидающих старого, не соответствующего стандартам поведения Internet Explorer. Однако в марте 2008 года Microsoft выпустила IE8 beta 1 и включила эти изменения по умолчанию. Джеймс Пратт, менеджер продукта IE8, объяснил, что это решение было принято для того, чтобы "разработчики могли тратить больше времени на создание функций и интересных возможностей, а меньше – на настройку своих сайтов для разных браузеров". Другая нерешенная проблема соответствия стандартам приводила к тому, что IE8 beta 1 не проходил тест, если не все его элементы размещались на одном сервере. В августе 2008 года Microsoft выпустила IE8 beta 2, которая устранила эту проблему. Тем не менее, начиная с этой бета-версии, режим стандарта не включен по умолчанию для страниц, загружаемых в "Зоне интрасети". Эта зона активна для страниц, загружаемых по UNC-путям, именованным адресам без точек (например, http://mysite/) и сайтов, обходящих настройки прокси-сервера. Следовательно, IE8 не будет проходить тест Acid2 при загрузке в этих случаях.