Читаем CSS3 для веб-дизайнеров полностью

Ранее упоминалось, что спецификация CSS3 – это набор модулей, которые постепенно интегрируются производителями браузеров. Иногда интеграция включает в себя экспериментальную поддержку. Это означает, что пока спецификацию пишут, обсуждают и критикуют в W3C, изготовитель браузера может решить добавить поддержку для каких-то свойств, чтобы опробовать их на практике. В последнее время такая практика стала естественной частью процесса, и обратная связь, получаемая во время экспериментального использования, часто применяется, чтобы внести поправки в спецификацию.

С другой стороны, изготовитель браузера может захотеть ввести экспериментальное свойство, которое не входит ни в какой предложенный стандарт, но может получить такой статус когда-либо.

Для такой экспериментальной поддержки свойств CSS часто вводятся браузерные префиксы – например, так:


– webkit – border-radius


Отбитое дефисом ключевое слово, стоящее перед названием свойства, помечает его как незавершенное, относящееся исключительно к реализации в конкретном браузере и к интерпретации развивающейся спецификации. Если экспериментальное свойство войдет в законченный модуль CSS3, браузер должен поддерживать беспрефиксное название свойства.

У каждого изготовителя браузеров есть свой префикс, которым он в первую очередь помечает собственные экспериментальные свойства. Все остальные браузеры игнорируют правила, содержащие неизвестные им префиксы.

В табл. 1.03 перечислены самые широко используемые браузеры и связанные с ними префиксы. Мы будем использовать префиксы WebKit, Mozilla и Opera в части, касающейся CSS3 в примерах из следующих глав.


Таблица 1.03. Наиболее широко используемые браузеры и связанные с ними префиксы

Как работают браузерные префиксы

Вот как CSS работает на практике с браузерными префиксами. Возьмем свойство border-radius в качестве примера. Положим, мы хотим скруглить углы элемента с радиусом 10 пикселей; вот как это делается:


.foo {

– webkit-border-radius: 10px;

– moz-border-radius: 10px;

border-radius: 10px;

}


Webkit (движок, используемый в браузерах Chrome, Safari, и в Safari для мобильных устройств) и Gecko (движок браузера Firefox) поддерживают свойство border-radius посредством собственных префиксных свойств; Opera поддерживает это свойство без префикса. IE9 также будет поддерживать border-radius без браузерного префикса.

На момент подготовки издания (август 2012 года) все упомянутые браузеры поддерживают свойство border-radius без префикса, в том числе и IE9. Прим. ред.

Оптимальный порядок

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

Зачем ставить подлинное CSS3-свойство последним? Вероятно, в будущем ваши стилевые файлы будут работать в большем количестве браузеров, постепенно улучшая дизайн. Когда браузер, наконец, будет поддерживать то свойство, которое определено в спецификации, применяться будет подлинное свойство, а не экспериментальная версия, так как оно будет стоять последним в списке. Даже если реализация префиксной версии будет отличаться от настоящего свойства из спецификации, вы заботитесь о том, что окончательный стандарт остается первостепенным.

Не пугайтесь браузерных префиксов!

Первоначальная реакция читателя может быть примерно такой: «Ах, это запутанные и проприетарные штуки!» Но я уверяю вас, это не только шаг вперед, а еще и намного менее запутанное решение в сравнении с раздутыми кусками кода и отсутствием гибкости, которыми сопровождаются решения не на CSS3. Кроме того, это важная часть развития спецификации.

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

(а не к утвержденным). В этом заключается большое отличие от разнообразного хакерского CSS, который все мы иногда использовали, чтобы разрешить проблемы с кросс-браузерностью.

Кто-то может сравнить браузерные префиксы с эксплойтами синтаксиса, которые многим из нас приходилось использовать, чтобы дать команду конкретным версиям браузеров (например, синтаксис w\idth: 200px или _width: 200px, который позволяет обращаться к конкретной версии IE). Но, напротив, браузерные префиксы – это важная часть процесса стандартизации, позволяющая развивать свойство, внедряя его для практического применения.

Эрик Мейер, эксперт по CSS, объясняет разницу в статье «Префикс или постхак» на A List Apart [3]:

Перейти на страницу:

Похожие книги

Секреты приложений Google
Секреты приложений Google

Даже продвинутые пользователи Интернета не подозревают о тех огромных возможностях, которые предоставляют сервисы Google. Автор рассказывает о таких «секретах» сервисов, которые просто немедленно хочется использовать! Создавать сайты и презентации, бродить по улочкам Парижа, изучать звездное небо – все это доступно каждому, кто сидит у экрана монитора и имеет доступ в Интернет. Книга научит вас работать с веб-приложениями и тысячекратно увеличить свои возможности с помощью новейших технологий. Она написана легким, доступным языком и не требует от читателя наличия каких-либо специальных знаний. Книга содержит множество примеров, иллюстраций и будет полезна всем, кто не стоит на месте и стремится сделать свою жизнь более насыщенной и интересной.

Денис Балуев , Денис Игоревич Балуев

Программирование, программы, базы данных / Интернет / Программное обеспечение / Книги по IT
Самоучитель современного пользователя ПК
Самоучитель современного пользователя ПК

В самоучителе рассмотрены темы, актуальные для современного пользователя ПК: цифровое фото, запись, оцифровка, обработка и воспроизведение звуковых и видеофайлов; Web-камеры, запись компакт-дисков, а также сканирование и печать изображений, работа с дигитайзерами, подключение плазменных панелей и телевизоров к ПК. Для начинающих пользователей в необходимом объеме изложены основные сведения об устройстве компьютера и видах программ, описаны настройка и работа в инструментальных и сервисных программах (диагностика и проверка ПК, файловые менеджеры, программы-антивирусы и архиваторы). Дополнительно изложены вопросы восстановления работоспособности ПК. Рекомендуется широкому кругу читателей — начинающих пользователей и работающих на ПК, которые интересуются возможностями новой аппаратуры и программного обеспечения.

В. В. Мельниченко , Н. В. Калиниченко

Интернет / Компьютерное «железо» / ОС и Сети / Программное обеспечение
Как заработать в Интернете. 35 самых быстрых способов
Как заработать в Интернете. 35 самых быстрых способов

В современном мире новые технологии играют решающую роль, а с помощью Интернета любой человек в короткое время может стать миллионером! И самое главное, что для этого вам даже не нужно выходить из дому – лишь тратить несколько часов времени на работу в Сети…Способов заработать в Сети довольно много, но не все они идеальны, и не все будут одинаково полезны и эффективны. Эта книга написана специально для тех, кого интересует заработок в Интернете. На ее страницах вы найдете обзор методов: известные и не очень, старые и новые способы заработка в Сети, варианты открытия своего дела и способы работать «на себя» без создания ООО или ИП. Подробное описание каждого метода позволит вам сделать вывод о том, какой способ заработка подходит лично вам, а может быть, вы придумаете что-то новое. После прочтения этой книги вы будете обладать всеми знаниями, необходимыми для заработка в Сети – читайте и начинайте зарабатывать!

Ольга Фомина

ОС и Сети, интернет / Интернет / Личные финансы / Финансы и бизнес / Книги по IT