тень с помощью CSS3

В последнее время все больше и больше разговоров возникает о IE6, точней о том, когда же здохнет попрощается с нами и весь мир начнет переходить на многообещающий css3.

Одним из ярких примеров использования css3 является создание теней для блоков. Существует довольно таки большое количество способов создания тени и на css2, но для этого нужны дополнительные блоки <div> и .png изображения уголков, а вместе с ним и хаки для все того же IE6, чтоб он работал с .png. Все это начинает сказываться на читабельности кода, непонятным глюкам да и вообще на сложности верстки таких страниц. И это все в то время, когда тень на боксах — это всего лишь часть дизайна и не более того.

В css3 есть такое свойство как box-shadow, которое и предназначено для создания тени. В настоящее время это свойство поддерживается в Safari / WebKit, а также в Firefox начиная с версии 3.5. Для IE существует фильтр DropShadow. Объединение этого фильтра с еще одни фильтром Glow позволяет добиться того, что и в IE поздних версий тень будет отображаться.

box-shadow

К сожалению, данный метод напрочь игнорируется очень популярным браузером Opera :(

Недостатки:

  1. нет поддержки Opera или Firefox младше версии 3,5

  2. фильтры могут конфликтовать с JQuery

  3. тени в разных браузерах не совпадают



Преймущества:

… даже не знаю, все преймущества очевидны, но они убиваются, для меня по крайней мере точно, одной фразой «не поддерживается в Opera»

Ах да… кому интересно исходный css код:

div {
    filter: 
        progid:DXImageTransform.Microsoft.Shadow(color=#eeeeee,direction=0,strength=7)
        progid:DXImageTransform.Microsoft.Shadow(color=#dddddd,direction=90,strength=10)
        progid:DXImageTransform.Microsoft.Shadow(color=#dddddd,direction=180,strength=10)
        progid:DXImageTransform.Microsoft.Shadow(color=#eeeeee,direction=270,strength=7);
}


Вывод:

Я подозреваю, что по мере чтения этой статьи у многих из вас возник вопрос: «а для чего это все если… ?»
Отвечаю:
ну во-первых, может кому то и не надо под оперу верстать :)
а во-вторых, так… для развития, начнем потихоньку учить то, что нас ждет с приходом css3 ;)
  • 0
  • 17 ноября 2009, 15:41
  • ni_x

Комментарии (1)

RSS свернуть / развернуть
+
0
Пожалуй мало кто будет использовать данный способ для создания тени, так как тут уже и написано автором, что в Опере к сожалению не будет реализована наша задача, а именно не будет отображаться тень. Данный браузер использует довольно таки большое кол-во людей по всему миру, и его соответственно не стоит игнорировать. Ну а в общем хочу сказать спасибо автору, так как статьи такого рода позволяют как минимум шагать в ногу со временем, и соответственно в будущем пожалуй будет легче использовать CSS3, так как уже какие-нибудь понятия об этом, у нас уже будут…
avatar

AlexandeR

  • 17 ноября 2009, 22:03

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.