Директива
Это оператор CSS. Записывается, как @ + название директивы. Самые часто используемые директивы: @charset, @import, @media.
А теперь о каждом чуть чуть по подробнее.
@charset
Служит для того, чтобы задать кодировку
Синтаксис
@charset "название кодировки";
Некоторые из возможных значений
- UTF-8 — сейчас наиболее универсальная кодировка, подходит для большинства веб страниц
- ISO-8859-1 — Latin-1, для большинства западноевропейских языков
- Windows-1251 — Кириллица (Windows)
- KOI8-r — Кириллица (КОИ8-Р)
- Windows-1252 — Западная Европа (Windows)
- Windows-1250 — Центральная Европа (Windows)
Важно
В таблице стилей директива @charset должна идти первой и быть в единственном экземпляре.
@import
Cлужит для подключения таблиц стилей.
В отличие, от link, директива @import позволяет соединять таблицы стилей внутри CSS. Указанные в директиве CSS-файлы загружаются и присоединяются к тому CSS в котором встретилась @import.
@import url("style.css");
@import url(style.css);
Важно
Если файл импортируется из директории, css -@import url(“css/style.css”);
а в нем есть путь к рисунку: background-image: url(image/picture.gif);
то путь теперь должен быть следующим background-image: url(../image/picture.gif);
т.к. style.css теперь будет смотреть из под каталога css.
Если в CSS есть директива @import, то она должна находиться в самом начале таблицы (перед всеми правилами). В противном случае браузер может ее проигнорировать.
@media
Cлужит для того, чтобы задать имя устройства для которого написана таблица стилей.
@media тип1 [, тип2] { Описание стиля }
all все устройства (используется по умолчанию)
aural речевые синтезаторы и программы воспроизведения текста в слух (напрмиер голосовые браузеры)
braille устройства для слепых людей, основанные на системе Брайля
embossed для принтеров Брайля
handheld наладонные устройства (КПК, смартфоны и т.п.)
print устройства для печати
projection проекторы
screen экраны компьютерных мониторов
tv телевизоры
tty устройства, использующие моноширинную символьную сетку, подобно телетайпам и терминалам
Способ @import мне кажется достаточно удобным, но в силу ряда причин диррективы используются на сайтах не так часто, а все из-за того что в браузерах IE 6-7 возникают, как всегда проблемы.