Как я могу основать одну настройку CSS на другой? - PullRequest
0 голосов
/ 08 января 2010

С учетом следующего динамически генерируемого CSS:

.ui-widget-header { border: 1px solid #4297d7; background: #5c9ccc; }

Как извлечь значение background для использования в:

body
{
background-color: VALUE_FROM_UI_WIDGET_HEADER_GOES_HERE;
}

Подробнее: я использую jQuery-UI Themeroller и позволяю пользователям загружать свои собственные темы. Мне бы хотелось, чтобы цвет фона страницы был основан на цвете от Themeroller. Это позволяет им настроить цвет фона. Это можно сделать только в CSS?

Ответы [ 3 ]

4 голосов
/ 08 января 2010

В CSS нет способа сказать: «Значение этого свойства должно совпадать со значением свойства в другом наборе правил».

Для такого рода вещей вы обычно используете селектор группировки:

.ui-widget-header { border: 1px solid #4297d7; }

.ui-widget-header,
body {
    background: #5c9ccc;
}
1 голос
/ 08 января 2010

Ответы «Нет пути» верны на самом деле. Лучшее, что вы можете получить, это использовать CSS-фреймворк (или, точнее, «компилятор»), такой как Compass , который позволит вам определить переменные, подклассы и тому подобное в исходных файлах, которые затем компилируются в живой CSS. Здесь есть хорошая сводка CSS-компиляторов .

1 голос
/ 08 января 2010

Нет способа определить отношения только в CSS.

Вы должны будете использовать javascript, чтобы достичь желаемого.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...