тег ‹nav›, поддерживаемый всеми браузерами?

Я нашел это руководство, в котором используется тег <nav>. демо хорошо работает даже в IE7. и тем не менее, w3cshools упоминает, что этот тег НЕ поддерживается в IE8 и более ранних версиях .

Итак, какова правда, и должен ли я сохранить этот тег навигации или изменить его на div? (это ничего не испортит?)


person rockyraw    schedule 24.02.2014    source источник
comment
Во-первых, не доверяйте w3schools.   -  person enapupe    schedule 24.02.2014
comment
Проверьте Семантическая совместимость HTML5, никогда не читайте w3schools. Проще говоря, тег <nav> был введен после разработки или стандартизации IE7-8, и более старые версии IE не будут пытаться обновиться до новых стандартов.   -  person MackieeE    schedule 24.02.2014
comment
@MackieeE, это хороший ответ, дерзайте :)   -  person enapupe    schedule 24.02.2014
comment
+1 энапуп w3fools.com   -  person Filip Huysmans    schedule 24.02.2014


Ответы (2)


Вам необходимо включить HTML5 shiv script, чтобы разрешить стилизацию элементов HTML5 в старых браузерах IE: http://code.google.com/p/html5shiv/

Чтобы использовать, включите следующий скрипт в свой элемент над вашим CSS:

<!--[if lt IE 9]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->

См. -> html5 новых элементов (заголовок, навигация, нижний колонтитул , ..) не работает в IE

Другой вариант — использовать Modernizr, который включает в себя HTML5 Shiv и также обеспечивает обнаружение функций HTML5.

person Mini John    schedule 24.02.2014
comment
как тогда упомянутая мной демонстрация работает на моем IE10 с консолью IE7? разве это не 100% симулятор IE7? - person rockyraw; 24.02.2014
comment
Вы должны включить скрипт shiv HTML5, и все в порядке. Не стоит так доверять W3Schools... - person Mini John; 24.02.2014
comment
@rockyraw Я считаю, что, поскольку IE10 использует другой механизм рендеринга, я бы не доверял эмуляции, несмотря на то, что она говорит, что может; но по моему опыту, сидя за компьютером с WinXP с IE7, вы чувствуете и ведете себя иначе, чем IE10, пытаясь вести себя как он (заметьте, это самоуверенный ответ, без фактов) - person MackieeE; 24.02.2014
comment
@TheMiniJohn, зачем утруждать себя включением дополнительных скриптов, если можно просто изменить <nav> на <div>? - person rockyraw; 25.02.2014
comment
Одним из новых элементов HTML 5 является элемент ‹nav›, который позволяет вам группировать ссылки, что приводит к более семантической разметке и дополнительной структуре, которые могут помочь программам чтения с экрана. - person Mini John; 25.02.2014

Конечно, вместо этого вы можете использовать div, но смысл использования nav в том, чтобы избавиться от div.

Не тратьте время на то, чтобы заставить HTML5 работать в старых браузерах.

person scootergrisen    schedule 24.02.2014
comment
это имеет больше смысла, зачем кому-то утруждать себя включением дополнительных скриптов, если можно просто изменить <nav> на <div>, кто-нибудь может объяснить? - person rockyraw; 25.02.2014