Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
я в драфте вложенности не виделБыло предложение от
Preprocessors are okay with needing arbitrary lookahead to parse CSS. Browsers aren’t — they want fast, parallizable parsing, and that means fixed, small amounts of lookahead.В этом плане вложенные блоки мне импонируют больше (скорее всего, в собственном препроцессоре я бы сделал так же), чем необходимость предварять каждое вложенное правило амперсандом, как это было в изначальных предложении и соответствующем черновике.
подводных камней в синтаксисе с амперсандами нету.Подводных камней нет, просто неудобно и не оч. DRY каждое вложенное правило предварять амперсандом: проще добавить один вложенный блок (
{…}), внутрь которого поместить произвольное количество правил без ведущего амперсанда..blog {
...
&-comment {
..
}
a { ... }
@at-root .some {
}
}
.blog {
...
}
.blog-comment {
...
}
.blog a {
...
}
.some {
...
}
.example {
color: red;
{
.a {}
.b {}
.c {}
}
}
.example {
color: red;
& .a {}
& .b {}
& .c {}
}
.example {
color: red;
.a {}
.b {}
.c {}
}
опасаются неоднозначностей, которые усложняли (и, соответственно, замедляли) бы механизм разбора CSS-кода, вынуждая его «заглядывать вперёд» (look ahead), чтобы отличить вложенное правило от обычного объявления.
.example {
color {}
}
.example {
& color {}
}
:root{
--fullWidth: 100%;
}
.col-11 {
width: calc(var(--fullWidth)/12*11);
}
.col-10 {
width: calc(var(--fullWidth)/12*10);
}
.col-9 {
width: calc(var(--fullWidth)/12*9);
}
...
Улучшенный синтаксис медиа-запросовПо-моему, улучшенный синтаксис, это когда
Позволяет использовать выражения >= и <= вместо min-width и max-width в медиа-запросах.
@media (width >= 500px) and (width <= 1200px) { /* Ваши стили */ }
@media (500px <= width <= 1200px) , а так — один фиг, что min-width, что width <=.Цвет rebeccapurpleВот это вот вообще не следовало сюда включать.
Псевдокласс :notСледует указать, что этот псевдокласс уже существует и успешно используется. В CSS4 только добавляется возможность указать список.
Единицы remУ Вас даже линк ведёт на спецификацию CSS3. Так что оно делает здесь?
$variable
vs
var(--variable)

var(--variable) действительно ужасно. При этом есть postcss-media-minmax, позволяющий писать, как говорил выше extempl, @media (500px <= width <= 1200px), есть pixrem, есть тот же postcss-calc, которые возвращает уже вычисленное значение.
Используем возможности CSS4 уже сегодня с cssnext