Приведет ли добавление атрибутов rel или name к элементам div и span, что IE/FF перейдет в режим причуд?
Будет ли тег как
<span id="suchAndSuch" class="blah" rel="this.that.other" name="this.name"></span>
или же
<div id="suchAndSuch" class="blah" rel="this.that.other" name="this.name"></div>
кинуть IE и / или FF в QM? Согласно W3C, это не стандартные атрибуты для этих тегов, но он не говорит, сделает ли их недействительными.
Ваша помощь очень ценится.
5 ответов
Нет, он не переведет браузер в режим причуд. Не имея DOCTYPE
или иметь комментарий HTML (или любой контент HTML) перед DOCTYPE
переместит браузеры в режим причуд.
Если вы можете избежать использования пользовательских атрибутов, вы должны. Если вы не можете, вы можете рассмотреть вопрос об использовании типа документа HTML5, а затем использовать data
атрибутов. Например, то, что вы написали, можно сделать так:
<div id="suchAndSuch" class="blah" data-references="this.that.other" data-name="this.name"></div>
И это все еще будет в силе, а также поддерживается современными браузерами (и даже рядом старых).
Вы должны использовать допустимый тип документа, и он должен быть первым найденным в файле. Я не проверял поведение строгого типа документа и пользовательских атрибутов, но я точно знаю, что переходный тип документа работает с пользовательскими атрибутами.
Я думаю, что ключ должен иметь действительный тип документа:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Режим Quirks должен запускаться только в зависимости от (отсутствия) DOCTYPE
указано для документа.
В Firefox или IE вы можете проверить режим документа, вставив в адресную строку следующее:
javascript:alert(document.compatMode)
Действительные значения для document.compatMode
являются BackCompat
(для режима причуд) и CSS1Compat
(для стандартов / строгого режима).
В Firefox вы также можете щелкнуть правой кнопкой мыши документ и нажать "Просмотр информации о странице". Режим будет указан в верхней части как "Режим рендеринга".
Вы можете проверить, как страница отображается следующим образом:
В Firefox зайдите в Инструменты> Информация о странице и посмотрите на "Режим рендеринга".
В IE8 нажмите Инструменты> Инструменты разработчика и посмотрите на "Режим документа" в правом верхнем углу.
Например, эта страница отображается в "Режиме соответствия стандартам" в Firefox и "Стандартах IE8" в Internet Explorer.
Спасибо за быстрые ответы. Я пошел дальше и протестировал каждый из приведенных выше тегов с помощью валидатора W3C, и это действительно недопустимый X/HTML (я считаю, строгим) использовать rel или name в div или span.