CSS-селекторы (или операторы, контейнеры, разделители и т. Д.)
Есть ли контейнеры для селекторов CSS?
Мне просто любопытно, есть ли более элегантный способ сделать это, не повторяя урок:
#div1 .divClass, #div2 .divClass { color:cyan; }
Это то, что я имел в виду, но я не думаю, что есть способ сделать это.
#div1,#div2 > .divClass { }
[#div1,#div2] .divClass { }
2 ответа
Решение
Краткий ответ: Нет.
Кажется, вы можете добавить класс для обоих div.
<div id="div1" class="sharedClass"></div>
<div id="div2" class="sharedClass"></div>
.sharedClass > .divClass { color: cyan; }
Во всяком случае, этот вопрос может иметь несколько ответов. Попробуйте взглянуть на LESS, который расширяет возможности CSS. Тогда вы могли бы сделать что-то удивительное, как это:
.divClass {
/* ... */
}
#div1 {
color: red;
border: 1px solid blue;
.divClass;
}
#div2 {
color: cyan;
border: 1px solid green;
.divClass;
}
Похоже, вы ищете что-то вроде LESS, языка таблиц стилей, который можно скомпилировать в обычный CSS. Возможно, это не совсем то, что вам нужно в вашем конкретном случае (но опять же, возможно, я не пробовал), но похоже, что это будет полезно для вас.