Это статья для тех кто хочет заставить IE6,7,8 и т.д. понимать border-radius
, box-shodow
и так далее, но всякие корявые методы не работали. В том числе и не получалось запустить всем известный "PIE"!!!
Если вы еще не слышали что такое HTML5 и CSS3, то вы многое потеряли. Просто посмотрите на презентацию и почувствуйте всю их силу и мощь. Благодаря третьему css можно без особых затруднений реализовать такие дизайнерские задумки, которые раньше казались наказанием.
Только тема совсем не о том, а о печальной стороне ситуации: у нас есть IE, которые не поддерживает ни CSS3, ни HTML5. Однако в нашей печали есть лучик света: CSS3 PIE.
CSS3 PIE или Progressive Internet Explorer это дополнительный движок (модернизация) для ИЕ, разработанный Джейсоном Джонстоном. Он позволяет IE понять некоторые возможности CSS3, а именно:
CSS3 PIE или Progressive Internet Explorer это дополнительный движок (модернизация) для ИЕ, разработанный Джейсоном Джонстоном. Он позволяет IE понять некоторые возможности CSS3, а именно:
Для начала нужно скачать его. Например здесь. Затем добавляем PIE.htc
к себе в проект. Теперь элементам, для которых необходимо использовать одно из вышеописанных свойств, прописываем behavior: url(path-to/PIE.htc)
. Вот так это будет выглядеть для закругления:
.rounded { border: 1px solid #000; border-radius: 8px; -moz-border-radius: 8px; -webkit-border-radius: 8px; -khtml-border-radius: 8px; behavior: url(PIE.htc); }
Готово! Смотрим и радуемся. Не поленитесь посмотреть в IE
position:static
pie.htc
, то он должен быть указан относительно html файла, а не файла стилейborder-radius
cработает, а border-top-right-radius
уже нет.PIE.htc
требуется правильный content-type
заголовок. Файл .htc
должен передаться с заголовком text/x-component
. Как правило достаточно поправить настройки сервера. Если же не получается, то в файле .htaccess необходимо добавить (или раскомментировать) строку AddType text/x-component
.htc.PIE.php
, который прилагается в том же дистрибутиве. Его необходимо положить в тот же каталог где и PIE.htc
но подключать уже .php файл:
.rounded { behavior: url(PIE.php); }
Подробнее о возможных проблемах
Все возможности, поддерживаемые PIE относятся к графике. Для их эмуляции PIE использует VML. Создается VML-объект, в котором рисуется необходимый графический эффект. Затем полученный объект подставляется на место целевого элемента абсолютным позиционированием.