CSS Snapshot 2015 — официальное определение современного CSS
В недрах Рабочей группы CSS в W3C зреет маленькая сенсация: есть шанс, что в ближайшее время вместо безнадежно устаревшего документа пятилетней давности мы получим новое, актуальное официальное определение CSS! Хотя в самом документе в качестве основной аудитории указаны разработчики браузеров, веб-разработчикам тоже не помешает знание, какие спецификации CSS сами их авторы считают «готовыми» и годными для реализации, а какие — «сырыми» и экспериментальными.
Вот что официально входит в CSS образца 2015 года, по редакторскому черновику нового документа:
- Последняя версия CSS2.x, исправленная и дополненная (скорее всего, это будет CSS2.2) — определяет базовые понятия и направления развития CSS, при этом некоторые ее разделы переопределены соотв. модулями 3 уровня;
- Модуль синтаксиса CSS 3 уровня — определяет правила парсинга CSS, заменяет некоторые разделы 4 главы CSS2.x и приложение G;
- Атрибут style (рекомендация 2013 г.);
- Медиавыражения 3 уровня, заменяют раздел 7.3 CSS2.x;
- Условные выражения CSS 3 уровня, расширяют медиавыражения, добавляют директиву @supports и заменяют раздел 7.2 CSS2.x;
- Пространства имен CSS (нужны для селекторов с префиксами пространств имен, напр. в XML);
- Селекторы 3 уровня, заменяют главу 5 и раздел 6.4.3 CSS2.x;
- Каскад и наследование 3 уровня, заменяют раздел 1.4.3 и главу 6 CSS2.x;
- CSS-переходы 1 уровня
- CSS-анимации 1 уровня
- Единицы и значения CSS 3 уровня, заменяют разделы 1.4.2.1, 4.3 и часть приложения А CSS2.x;
- CSS-цвета 3 уровня, вводят свойство opacity и заменяют разделы 4.3.6, 14.1 и 18.2 CSS2.x;
- CSS-фоны и границы 3 уровня, вводят множественные фоны, border-image и box-shadow, заменяют разделы 8.5 и 14.2 CSS2.x;
- Изображения в качестве значений и генерируемый контент CSS 3 уровня — новые возможности управления размером и ориентацией картинок, а также CSS-градиенты;
- CSS-шрифты 3 уровня — замена главы 15 CSS2.x и более тонкое управление шрифтовыми эффектами;
- Многоколончатая раскладка CSS 1 уровня;
- Флексбоксы 1 уровня;
- Пользовательский интерфейс CSS 3 уровня — замена пп. 18.1 и 18.4 CSS2.x, уточняет свойства cursor и outline (а также вводит box-sizing);
- CSS-трансформации 1 уровня;
- CSS-композитинг и смешивание слоёв 1 уровня — управление режимами наложения и связанными с ними спецэффектами.
Пока не включены в официальное определение, хотя признаны практически готовыми, модули стилей CSS-счетчиков 3 уровня, CSS-маски 1 уровня, CSS-фигуры 1 уровня, украшения текста CSS 3 уровня и речевой вывод CSS 1 уровня. Эти модули еще предстоит тестировать в экспериментальном режиме. Возможно, к окончательной редакции документа некоторые модули «перекочуют» из первого списка во второй или наоборот.
Новый документ также напоминает, что у языка CSS в целом нет не только версий, но даже уровней. 1-й, 3-й, 4-й и т.д. уровни относятся к отдельным модулям, а применительно к языку в целом «CSS 1 уровня» означает историческую эпоху древней спецификации CSS1, «CSS 2 уровня» — спецификацию CSS2.x и атрибут style, а «CSS 3 уровня» — всё, что добавилось позже (и это условное, тоже во многом исторически сложившееся, название). «CSS 4 уровня» (не говоря уже о «CSS4») не будет. По-моему, эта классификация только увеличивает путаницу, но… это ведь еще черновик.
Надеюсь, что новый документ поможет вам разобраться в давнем маCSSаракше. Хотя старые проверенные caniuse.com и подобные ресурсы еще надолго останутся актуальными.
P.S. Это тоже может быть интересно: