Переменные массива CSS - возможно?
Я понимаю, как использовать переменные в CSS. Они помогли ускорить мой рабочий процесс на сайтах моих клиентов.
Я заметил, что более чем в нескольких случаях я записывал переменные с номером рядом с ним, чтобы назначить их определенному цвету или виду, потому что нет системы массивов. Я закончил тем, что создал квази-массив, так сказать.
Как это
--c1: color:#ddd; //link color
--c2: color:#aaa; //quote color
--c3: color:#444; //body text
Можно ли сделать что-то подобное в CSS?
--c new array (color:#ddd, color:#aaa, color:#444);
Затем вызовите массив
arr(--c,3);
вместо
var(--c3);
Я понимаю, что CSS не является ООП, но было бы неплохо иметь возможность обрабатывать такие данные, особенно если я могу расширить их по двум измерениям. Я также понимаю, что это может быть бессмысленным теоретическим упражнением, так как ввод --c3 быстрее, чем выполнение --c,3 или даже --c[3]. Пища для размышлений.
1 ответ
Свойства в CSS не могут быть сгруппированы в массивы так, как вы описываете. Это включает в себя пользовательские свойства. Препроцессоры, такие как Sass и LESS, имеют карты и списки, но способ работы пользовательских свойств (см. Раздел 3 спецификации) означает, что невозможно сгруппировать их и проиндексировать из них, используя тот же синтаксис, что и в препроцессорах.