К счастью для нас, обходной путь существует, что позволяет старые браузеры признать эти новые элементы, что позволяет им быть стилизовано , и таким образом давая нам полное использование этих новых семантических тегов. Это инструмент под названием HTML5Shiv. Как указано на связанной странице Google, «shiv» и «shim» являются взаимозаменяемыми терминами в этом контексте. Но как мы перешли из IE, даже не признав существование этого элемента, а теперь его можно использовать? Фокус в том, что вызов document.createElement ("section") внезапно заставит IE распознать элемент раздела. Никто не знает, почему, но он работает, и вам даже не нужно использовать узел, возвращаемый этой функцией. Но вам нужно обязательно позвонить ему на раннем этапе на своем веб-сайте, прежде чем использовать какой-либо из этих элементов, иначе это не сработает. Вам нужно будет назвать это для каждых новых элементов HTML5, как следующий код:
"abbr article aside audio bdi canvas data datalist details figcaption figure "+ "footer header hgroup main mark meter nav output progress section " + "summary template time video" .replace(/w+/g, function(a){ document.createElement(a) });
Обратите внимание, что мы используем метод объекта строки заменить лаконично перебрать каждую непрерывную длину совпавших символов посредством регулярного выражения и выполнения функции обратного вызова для каждого символьного блока, который в свою очередь вызывает createElement. Здесь, здесь, мы будем называть этот метод «обрезкой документа», чтобы документ мог визуализировать новые элементы HTML5.
И его лучше использовать более новые версии браузеров, если вы не повторите что-то со старыми браузерами! : D
Спасибо вам!
Возможный дубликат этого: http://stackoverflow.com/questions/18223540/which-html5-tags-can-i-use-without-worrying-about-browser-compatibility –
Входные типы неизвестного типа в старые браузеры всегда отображаются как text = text. Но вам, вероятно, лучше спросить себя, действительно ли это стоит усилий. Все текущие браузеры по существу поддерживают HTML5, который уже давно существует, и браузеры, которые его не поддерживают, вероятно, слишком рискованны, чтобы продолжать использовать их в любом случае. Я бы просто принял новый стандарт, обслуживающий старые браузеры, только поощряет пользователей не обновлять. – GordonM