Вопрос
Как html5shiv работает на IE9, когда условный комментарий используется
[if lt IE 9]
для IE8 и ниже И делают Safari 4.x и Firefox 3.x читают IE условные комментарии? Если не так, как html5shiv POSSIBLY работает над этими браузерами, используя условные комментарии, как это предлагается в их Инструкции Github?
Цитирование readme на Github в отношении html5shiv script:
"Он также применяет базовый стиль для элементов HTML5 для IE6-9, Safari 4.x и FF 3.x."
Useage:
<!--[if lt IE 9]>
<script src="bower_components/html5shiv/dist/html5shiv.js"></script>
<![endif]-->
В прошлом году IE 8 и 9 в совокупности снизились с примерно 4% до примерно 2% в глобальном использовании в соответствии с счетчиком статистики. Поскольку Microsoft отменила поддержку для устаревших браузеров 12 января, похоже, что html5shiv может сейчас или скоро уйти в прошлое. Будет интересно посмотреть, насколько эти устаревшие IE-браузеры упадут в будущем году.
Однако, в зависимости от того, что вы разрабатываете, вы все равно можете поддерживать эти браузеры. Когда вы включаете Safari 4.x и Firefox 3 в вышеуказанную статистику, общая доля браузера, поддерживаемая html5shiv, составляет 2,3%. Для большинства людей это ничего, но если у вас есть сайт электронной торговли, 2,3% могут быть ОГРОМНЫМИ.
Что касается моего фактического вопроса, я думаю, что я либо пропустил что-то в документации, либо не совсем понял IE условные комментарии.
По логике я бы подумал, что это лучший способ сделать это. Условные комментарии в IE работают через версии с 5 по 9, поэтому мы не должны иметь загрузку script в IE5 без причины.
<!--[if !(IE 5)]>
<script src="bower_components/html5shiv/dist/html5shiv.js"></script>
<![endif]-->
Однако за последние 5 лет я никогда не видел, чтобы кто-то делал это так, поэтому я, очевидно, что-то пропустил. Плюс я до сих пор не вижу, как это будет работать для FF 3 и Safari 4, если нет ошибки или чего-то, что заставляет их не читать комментарии. Я открыл эту тему в html5shiv github по этой проблеме, а также, но не смог получить ответ.
HTML5shiv легко используется на миллионах сайтов с большинством разработчиков и владельцев сайтов, предполагая, что он поддерживает IE9 Safari 4 и FF 3 из коробки.
Также, насколько я знаю в отношении IE9, это все, что html5shiv делает для его поддержки.
article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}
mark{background:#FF0;color:#000}
Если это правда, это может быть другой причиной, по которой многие перестают использовать ее, учитывая, когда вы берете это уравнение и включаете его в свой css (или css reset), вы сокращаетесь до 1,39 % браузеров, на которые html5shiv действительно повлияет.