Page 45 - Сила CSS3 Освой новейший стандарт
P. 45

Грамотное использование CSS3  •  45

          Из-за вероятности подобных ошибок я рекомендую применять фильтры только
          в случае крайней необходимости — и то с осторожностью и не забывая о чувстве
          меры. И обязательно тщательно тестируйте код с фильтрами.

          ФильтраЦия IE С иСпользованием уСловных комментариев
          Очень часто бывает так, что обходные пути требуется создавать только для одного
          браузера — IE версий от 6 до 8. Это означает, что должен существовать какой-то
          способ передавать правила или сценарии только IE (или скрывать их только от IE),
          но не остальным браузерам. Вероятно, вы уже достаточно близко знакомы с этой
          проблемой: IE всегда требовал особого внимания, и необходимость предоставлять
          ему особые данные возникла задолго до появления CSS3. Тем не менее не мешает
          периодически освежать знания, так что в этом разделе мы обсудим различные
          способы удовлетворения специфических потребностей IE.

          Трюки, эксплуатирующие связанные с CSS недоработки в IE, — это старейший
          способ выделения именно IE из обширного ассортимента браузеров, и многие раз-
          работчики применяют их по сей день. Наиболее популярные и полезные трюки для
          IE — star html hack (http://css-discuss.incutio.com/wiki/Star_Html_Hack) и underscore
          hack (http://wellstyled.com/css-underscore-hack.html). Удобно, что трюки добавляются
          прямо в основную таблицу стилей; их легко найти, если возникает необходимость
          внести изменения или отследить поведение определенного стиля, и они не гене-
          рируют дополнительный HTTP-запрос. Однако некоторые трюки представляют
          собой недопустимый код CSS, и использование их увеличивает размер файла для
          всех браузеров, а не только для тех, для которых они предназначены. Плюс, если
          только вы не выучили все трюки наизусть, невозможно быстро определить, какой
          браузер какое значение получает, а это затрудняет поддержку вашего кода другими
          разработчиками.
          Из-за подобных сложностей большинство разработчиков CSS сегодня предпочитают
          использовать для обращения к IE условные комментарии. Условные комментарии —
          это особая форма комментариев HTML, прочитать которые способен только IE.
          Это допустимый код HTML, и он не причиняет ущерба никаким браузерам — все
          остальные браузеры, кроме IE, пропускают условные комментарии точно так же, как
          любые другие комментарии HTML. Таким образом, вы можете добавлять код HTML,
          который будет прочитан только IE — всеми версиями или только определенными.

          Но ведь перед нами стояла задача передать IE особый код CSS, а не HTML, разве не
          так? Да, но условные комментарии позволяют делать и это тоже, причем несколь-
          кими способами.
          Добавление таблиц стилей, предназначенных только для IE
          Первый вариант использования условного комментария заключается в том, чтобы
          поместить внутрь него директиву link или @import, ссылающуюся на специальную
          таблицу стилей для всех версий IE:



                                                        www.trk.kg
   40   41   42   43   44   45   46   47   48   49   50