Понимание преимуществ Modernizr перед html5shiv
Я знаю, что на сайте есть много хороших вопросов об этих двух библиотеках скриптов.
Я хотел спросить что-то, чего не могу найти ни в одном из них.
Что Modernizr предоставляет, что html5shiv не "из коробки", то есть просто включает скрипт.
Я знаю, что html5shiv "просто" исправляет элементы HTML5 для IE < 9, его поддержка там останавливается?
Modernizr исправляет проблемы CSS3 в навигаторах IE? Ie9.js делает это? (и я имею в виду этот конкретный вопрос из коробки, без дополнительного кода JS для обработки угловых случаев)
Каковы преимущества Modernizr по сравнению с html5shiv, если принять во внимание использование библиотеки помимо простого включения скрипта?
2 ответа
Они делают разные вещи.
Modernizr обнаруживает наличие функций на странице, позволяя вам предоставлять собственные полизаполнения для старых браузеров, если вам требуется эта функциональность. Вы можете добавить поддержку для <canvas>
использование тэга Canvas Polyfill для обеспечения функциональности Canvas, включая интерфейс JavaScript, в браузерах, не поддерживающих <canvas>
тег.
Html5shiv добавляет новые теги html5, которые недоступны (<section>
, <header>
и т. д.) для старых браузеров. Он также создает стили по умолчанию (display: block
за <section>
например).
Вот и все. Это не обеспечивает никакой другой функциональности.
Modernizr 1.5+ на самом деле включает HTML5Shiv, так что если вы используете его, Shiv является избыточным. Источник: http://modernizr.com/docs/
"Начиная с Modernizr 1.5 этот скрипт идентичен тому, что используется в популярной библиотеке html5shim / html5shiv".