Skip to content

Браузерные движки

Довелось мне начать делать юбилейный сайт себе. На html5 и css3. И чтоб быстро.

Старые браузеры можно заставить понимать новые теги. Для этого всего лишь надо в шапке приписать код с созданием ваших новых тегов:

<script>
document.createElement(‘header’);
document.createElement(‘nav’);
document.createElement(‘article’);
document.createElement(‘aside’);
document.createElement(‘footer’);
</script>

А вот дальше — тестирование на адекватную работу в разных браузерах под разными движками.
Условия писать можно не только для ИЕ, но и для других. При этом надо всего лишь указать именование движка ли браузера:

IE — Internet Explorer, проприетарный движок у него Trident
IEMac — Internet Explorer for the Mac
IEmob — IE mobile (иногда IEMobile – Internet Explorer Windows Mobile Phone)
Gecko — Gecko based browsers (Firefox, Camino etc и вообще любая Mozilla)
Webkit — Webkit based browsers (Safari, Shiira etc, некоторые версии Maxthone)
SafMob — Mobile Safari (iPhone / iPod Touch)
Opera — Opera’s browser, проприетарный движок Presto
Konq — Konqueror (линуксовый), частенько и KHTML
PSP — Playstation Portable
NetF — Net Front

Про альтернативные браузеры я уже в одноименной статье писала, и о том, что тестирования достаточно переключаться между движками браузера.
Ну а в остальном — хоть условие пиши, хоть объединяй условия. Прогуглить на тему условных комментариев подробнее и не забывать про условия:

IE [if IE] — IE, равное версии Internet Explorer.
value [if IE 7] — Целое или дробное число обозначающее версию браузера. Выражение истинно если число совпадает с версией браузера.
! [if !IE] Оператор отрицания (NOT). Возвращает значение обратное логическому значению аргумента.
lt [if lt IE 5.5] Меньше (less-than). Возвращает true если первый аргумент меньше второго.
lte [if lte IE 6] Меньше либо равно (less-than or equal). Возвращает true если первый аргумент меньше либо равен второму.
gt [if gt IE 5] Больше (greater-than). Возвращает true если первый аргумент больше второго.
gte [if gte IE 7] Больше либо равно (greater-than or equal). Возвращает true если первый аргумент больше либо равен второму.
( ) [if !(IE 7)] Скобки позволяют выделить подвыражения в сложном выражении.
& [if (gt IE 5)&(lt IE 7)] Оператор AND. Возвращает true если оба подвыражения истинны.
| [if (IE 6)|(IE 7)] Оператор OR. Возвращает true если одно их подвыражений истинно.
true [if true] Всегда true.
false [if false] Всегда false.

В частности, Битрикс использует условие для того, чтобы заставить пользователя купить новый компьютер использовать браузер посовременее и отказаться наконец-то от старого 6 ишачка:

<!—[if lte IE 6]>
Административная панель не поддерживает Internet Explorer версии 6 и ниже. Установите современный браузер!
<![endif]—>

Published inВёрстка и средства