Это приложение не является нормативным, а носит только информативный характер.
CSS2 базируется на CSS1, так что все таблицы стилей, допустимые в CSS1, допустимы и в CSS2. Различия между спецификацией CSS1 (см. [CSS1]) и настоящей спецификацией разделены на три группы: новые функциональные возможности, обновленные описания функциональных возможностей CSS1 и изменения в CSS1.
Механизмов многоэтапного выбора шрифтов, включая их синтез, загрузку и интеллектуальное сопоставление. Кроме того, введено понятие системных шрифтов, и добавлено новое свойство 'font-size-adjust'.
Спецификация CSS1 была краткой и лаконичной. Настоящая спецификация оказывается более объемной и удобной для чтения. Хотя ее дополнительное содержание большей частью посвящено описанию новых функциональных возможностей, оно, тем не менее, существенно расширяет описание функций CSS1. За исключением некоторых случаев, описанных ниже, переписанные описания не имели никаких изменений ни в синтаксисе, ни в семантике.
Поскольку все таблицы стилей CSS1 допустимы в CSS2, то в ряде случаев при переводе таблиц стилей из CSS1 в CSS2 они могут принимать иное значение. Большинство изменений в этой спецификации внесено благодаря обратной связи с пользователями, но вместе с этим некоторые модификации были обусловлены наличием ошибок.
Была изменена семантика правила "!important". В CSS1 правило "!important" в таблице стилей разработчика имеет более высокий приоритет по сравнению с тем же правилом в пользовательской таблице стилей. В CSS2 все наоборот.
В CSS2 значения цветов ограничены цветовой гаммой устройства, а не пространством sRGB, как в CSS1.
В CSS1 просто говорилось, что свойство 'margin-right' игнорируется, если обоим свойствам 'margin-left' и 'width' присвоены значения. В CSS2 выбор между тем, какое свойство - 'margin-right' или 'margin-left' - будет игнорироваться, зависит от направления ввода текста.
В CSS1 некоторые свойства (например, 'padding') имели значения, задаваемые относительно ширины родительского элемента. Это было ошибкой, т.к. эти значения следовало задавать относительно ширины элемента уровня блока. В связи с этим в настоящей спецификации было введено понятие "контейнер".
В CSS2 начальным значением свойства 'display' является 'inline', а не 'block', как в CSS1.
В CSS1 свойство 'clear' применялось ко всем элементам, что оказалось ошибкой. В CSS2 данное свойство применяется только к элементам уровня блока.
Предложенный коэффициент масштабирования между соседними значениями свойства 'font-size' в таблице размеров шрифтов уменьшен с 1.5 до 1.2.
Наследуемым значением свойства 'font-size' теперь является вычисляемое значение, а не фактическое.
В CSS1 в описании свойства 'inside' (для 'list-style-position') допускалась ситуация, когда левое поле текста могло изменяться, а позиция маркера нет. В CSS2 это допущение исключено.