Данная спецификация определяет CSS первого уровня. В перспективе ожидается появление более высоких уровней CSS с дополнительными свойствами. Чтобы обеспечить совместимость UA, поддерживающих только CSS1, с более поздними версиями языка, в данном разделе описываются процедуры действий UA в случае обнаружения несоответствия требованиям CSS первого уровня.
H1 { color: red; rotation: 70deg }
UA будет обрабатывать, как если бы она имела вид
H1 { color: red; }
IMG { float: left } /* верно для CSS1 */ IMG { float: left top } /* "top" недопустимое значение для 'float' */ IMG { background: "red" } /* в CSS1 ключевые слова не закавычиваются */ IMG { border-width: 3 } /* должна быть указана размерность числа, */ /* выражающего значение длины */
В вышеприведенном примере анализатор CSS1 должен принять к исполнению первую строку и игнорировать последующие, в результате чего таблица стилей примет вид:
IMG { float: left } IMG { } IMG { } IMG { }
UA, совместимый с будущей спецификацией CSS, может отработать какую - либо из остальных строк надлежащим образом.
@three-dee { @background-lighting { azimuth: 30deg; elevation: 190deg; } H1 { color: red } } H1 {color: blue}
где '@three-dee' - недопустимое выражение для CSS1. Следовательно, вся строка с "собачкой" (вплоть до третьих правых фигурных скобок включительно) игнорируется.
UA с поддержкой CSS1 пропускает изъятое выражение, фактически сокращая таблицу стилей до:
H1 {color: blue}
Более подробно:
Таблица стилей CSS, для любой версии CSS, состоит из перечня директив (statements). Есть два вида директив: предустановки и установки. Возле директив допускаются промежутки (пробелы, табуляция, новые строки).
Таблица стилей CSS часто вставляется в документы HTML, и для сокрытия таблицы стилей от более ранних UA, желательно вставлять ее внутри комментариев HTML. Знаки комментариев HTML "" могут быть расположены перед, после и охватывая утверждения. Они могут отделяться интервалами.
Предустановки начинаются с зарезервированных слов с приставкой в виде знака "собачки" '@' (к примеру: @import', '@page') и идентификатора. Идентификатор может состоять из букв, цифр, черточек и спецсимволов (определение ниже).
Предустановка состоит из всего, что находится до следующей точки с запятой (;) включительно. UA для CSS, встречая предустановку, начинающуюся со слова с приставкой, иной чем слово '@import', игнорируют всю предустановку и продолжают отработку после ее окончания. Также игнорируется любая предустановка, начинающаяся с '@import', если она не располагается вверху таблицы стилей, скажем, после какого-либо правила (даже игнорируемого). Рассмотрим пример.
Пусть анализатор CSS1 обрабатывает следующую таблицу стилей: