Share via


Часто задаваемые вопросы по совместимости

Несколько недель назад мы рассказали об изменениях в работе функции Compatibility View, внесенных в IE8 RC1. Как вы помните из предыдущей статьи, пользователи при необходимости могут подписаться на получение списков совместимости с различными сайтами, которые лучше всего просматривать в режиме Compatibility View. При входе на сайт, который находится в списке, IE8 автоматически отобразит сайт в режиме Compatibility View без необходимости нажатия кнопки Compatibility View. Эта функция стала причиной массы продуктивных дискуссий, однако, привела к появлению нескольких вопросов. И в этой статье я попытаюсь ответить на несколько наиболее часто задаваемых вопросов.

Почему мой сайт в списке совместимости?

Мы регулярно получаем сообщения о проблемах совместимости при просмотре различных сайтов через наши телеметрические системы, утилиту Report a Webpage Problem, а также из иных источников. Эти данные показывают, что пользователи предпочитают просматривать конкретный сайт в режиме Compatibility View, а не в режиме стандартов IE8. Если ваш сайт популярен в вашем регионе, то IE8 позволит гарантировать, что те, кто использует для просмотра сайта IE8, будут иметь положительный опыт работы с ним.

Можно ли узнать, что является причиной несовместимости на сайте?

Получаемые нами данные телеметрии поступают в форме систематизированной информации о домене верхнего уровня. Однако, эти данные не содержат информации о точных причинах, по которым пользователь решил воспользоваться режимом совместимости, как и не сообщают нам URL-адрес страницы, находясь на которой он включил Compatibility View. Другими словами, эти данные не могут быть использованы для проведения тестов совместимости с IE8, как и не могут быть точным указателем контента, ставшего причиной перехода в этот режим. Они сообщают нам только о том, что пользователь столкнулся с проблемой несовместимости на конкретном сайте.

Возникает вопрос, в чем смысл использования телеметрии при таких ограничениях? Оказалось, что использование телеметрии дает очень точную информацию о пользовательских настройках браузера – намного более точную, чем если бы менеджер команды IE сидел и планомерно проверял сайт за сайтом. Получаемая нами информация носит объективный, а не субъективный характер. Кроме того, использование телеметрии позволяет проверить на совместимость гораздо большее число сайтов, чем смогла бы проверить вся наша команда.

Данные из других источников, включая сообщения об ошибках и утилиту Report a Webpage Problem, часто содержат URL-адрес страницы и информацию о последовательности действий, приводящих к возникновению проблемы. Поэтому комбинирование этих двух источников дает нам действительно полезную информацию. Откровенно говоря, у нас нет примеров ошибок для каждого сайта, имеющего проблемы совместимости с IE8, поскольку мы не в силах посетить все сайты, которые посещают среднестатистические пользователи IE. Однако, я все-таки подготовил несколько примеров, которые иллюстрируют проблемы, с которыми сталкиваются пользователи.

Сайт: www.mapquest.com, просмотр карт городов и автомобильного трафика.

Проблема: Трафик не отображается на карте. Синтаксис селектора, используемый страницей для VML (то есть v\:*) не соответствует CSS 2.1, поэтому режим стандартов IE8 его не принимает.

clip_image002

Сайт: www.myspace.com

Проблема: Верхний баннер на титульной странице myspace.com не центрирован. У Myspace появилась данная проблема, так как они использовали свойство clear в IE7, которая предоставляла этой версии сайта уникальный CSS-стиль с помощью условных комментариев. Эти стили больше не нужны в IE8, что и вызвало проблему.

clip_image004

Сайт: www.cnn.com

Проблема: Внизу практически каждой страницы есть пустой белый квадрат – это элемент IFRAME, который правильно отображается в IE8, но не виден в IE7. Заметьте, что другие браузеры не сталкиваются с данной проблемой, так как они не обрабатывают такую же разметку, как IE.

clip_image006

Сайт: www.google.com, зайдите на страницу финансов и проведите поиск по стоимости акций.

Проблема: График рыночных торгов обрезан с правой стороны. На этой странице используется неправильная HTML-разметка, которая в режиме стандартов IE8 обрабатывается не так, как в режиме стандартов IE7.

Что считается доменом верхнего уровня: microsoft.com или msdn.microsoft.com?

Уровнем глубины детализации в списке Compatibility View является домен верхнего уровня (TLD). В данном случае доменом верхнего уровня считается microsoft.com.

У нас было три причины, по которым мы решили использовать домены верхнего уровня, а не суб-домены.

· Мы оптимизировали работу пользователя, уменьшив количество проблем с несовместимостью и количество щелчков. Идея в данном случае состоит в том, что одна проблема совместимости – это плохо, а несколько– еще хуже. Например, представьте, что ни один из сайтов Microsoft несовместим с IE8. Пользователь заходит на msdn.microsoft.com, чтобы почитать статью – щелчок по кнопке. Статья пересылает его на support.microsoft.com – еще один щелчок мышью. После чего пользователь заходит на connect.microsoft.com, чтобы сообщить нам об ошибке – пользователю приходится слишком часто щелкать кнопки, а это еще один щелчок.

· Хранение URL или суб-доменов не всегда хорошо работает в случае с серверными фермами и изменением структуры сайтов.

· Мы избегаем проблемы масштабирования, когда IE необходимо синхронно сверяться со списком из десяти тысяч элементов перед открытием каждого сайта (с самого начала страница должна отображаться в правильном режиме). Использование доменов первого уровня позволяет сохранить размер списка управляемым.

Учитывая все вышесказанное, в случае, если пользователь столкнется с проблемами на одном суб-домене крупного распределенного (читать: управляемого множеством серверов) сайта, и включит режим Compatibility View, то этот режим будет включен для всего сайта. Мы прекрасно понимаем все жалобы пользователей и вот, как мы намерены с ними разобраться. Во-первых, если вы используете заголовок или тег X-UA-Compatible, то клиент теряет возможность включать режим Compatibility View с помощью кнопки. Телеметрия программы собирается независимо от состояния данного режима. Кроме того, отсутствие кнопки обозначает отсутствие у пользователя возможности ее нажать, а это является знаком того, что сайт несовместим. Во-вторых, если ваш сайт оказывается в этом списке, всегда есть возможность исключить его оттуда.

Из предыдущей статьи по данной теме:

Мы намерены тесно контактировать с владельцами несовместимых сайтов (в дополнение к тем, которым мы уже помогли), чтобы удостовериться в том, что они знают, какой именно режим работы браузера IE8 используют посетители их сайтов и какие именно шаги разработчики могут предпринять для обеспечения совместимости их сайта. Кроме того, мы будем уведомлять их о том, что их сайт внесен в список совместимости, предоставляя информацию о том, как отказаться от данной возможности. В последнем случае мы просто удалим данный домен из списка, который войдет в следующее обновление.

Когда следует проверять сайт на совместимость с IE8?

Мы понимаем, что реализация совместимости со стандартами в Internet Explorer 8 может потребовать немало времени у веб-дизайнеров и корпоративных пользователей. Собственно, поэтому мы и предложили пользователям функцию Compatibility View, чтобы при необходимости они смогли просмотреть и воспользоваться сайтом, как в предыдущей версии браузера. Таким образом, время уже пришло. Последняя публичная версия IE8 уже вышла. Настоятельно рекомендуем загрузить ее (если вы этого еще не сделали) и ознакомиться с материалами на сайте MSDN, чтобы обеспечить полную совместимость вашего сайта с IE8.

Скотт Дикенс (Scott Dickens),

руководитель группы разработчиков Internet Explorer