Стиль CSS не применяется, ограничение глубины стиля?

У меня есть следующая проблема:

Я получаю сгенерированный HTML с динамическим содержимым. Идентификаторы и иерархия тегов html всегда одинаковы. Я могу установить таблицу стилей.

Я попытался установить цвет текста на красный. Если я установлю его в этом положении, где это сделано на скриншоте, это не сработает. Если я установлю его в таблице ниже (таблица cols=2 border=0...), это сработает.

Набор кода

Есть ли предел глубины для CSS? Как установить цвет для всего текста, содержащего div (id=15B_gr или id=oReportCell)?


++ОБНОВЛЕНИЕ++

Я попытался установить таблицу стилей, но она не работает: Code snipset 2CSS, часть 1 CSS, часть 2


person PanzerTeo    schedule 03.03.2015    source источник
comment
ID не должен начинаться с цифры   -  person CᴴᵁᴮᴮʸNᴵᴺᴶᴬ    schedule 03.03.2015
comment
не видя вашего CSS, я бы предположил, что это проблема специфичности селектора. Например, если вы установили id=15B_gr как черный текст и не можете сделать так, чтобы его удаленный внук отображал красный текст. Вы можете прочитать о специфичности селекторов здесь: developer.mozilla.org/en- США/документы/Интернет/CSS/спецификация   -  person wf4    schedule 03.03.2015
comment
@uʍopǝpısdn В настоящее время он пытается использовать встроенные стили во внешнем <div>, но они не наследуются самым внутренним <span>.   -  person Filburt    schedule 03.03.2015
comment
@ CᴴᵁᴮᴮʸNᴵᴺᴶᴬ ОП говорит, что он сгенерировал html и, судя по тому, как выглядят другие идентификаторы, это механизм рендеринга отчетов, поэтому он вполне может быть вне его контроля.   -  person Filburt    schedule 03.03.2015
comment
идентификатор генерируется механизмом отчетов, это правильно. И я не применяю таблицу стилей в настоящее время.   -  person PanzerTeo    schedule 03.03.2015
comment
@CᴴᵁᴮᴮʸNᴵᴺᴶᴬ из html 5 значение атрибута id может начинаться с номером   -  person Nico O    schedule 03.03.2015
comment
возможный дубликат Цвет, не наследуемый дочерними элементами?   -  person wf4    schedule 03.03.2015
comment
Я уже пытался установить выравнивание текста, оно тоже не наследуется.   -  person PanzerTeo    schedule 03.03.2015
comment
@NicoO спасибо за это, не знал этого. Интересно, объявлен ли его тип документа как html5?   -  person CᴴᵁᴮᴮʸNᴵᴺᴶᴬ    schedule 03.03.2015


Ответы (2)


Вы должны иметь возможность настроить таргетинг на всех дочерних элементов div, используя звездочку. В таком случае:

#15B_gr * {
    color:red;
}

или вы можете установить его только для элементов:

#15B_gr span {
    color:red;
}

** Изменить для получения дополнительной информации **

Как указал @nico o, некоторые сложности могут возникнуть из-за того, что число является первым символом в идентификаторе. Предыдущие версии спецификации HTML не допускали, чтобы идентификаторы начинались с цифры.

http://w3c.github.io/html-reference/datatypes.html#common.data.id

person Patrick    schedule 03.03.2015
comment
Я пробовал, но это не работает. Я обновил свой вопрос. - person PanzerTeo; 03.03.2015
comment
Я понимаю. Если это проверка, то они уже установлены на !important; (что очень жаль). Вы можете сделать то же самое, что и последний !important; правило будет иметь приоритет, но это крайнее обстоятельство. - person Patrick; 03.03.2015
comment
Идентификатор не может начинаться с цифры (спасибо Нико О), затем я применил звездочку к oReportCell, тогда он работает. - person PanzerTeo; 03.03.2015
comment
Поскольку фактическое решение заключалось в том, что идентификатор (и имена классов) не должен начинаться с цифры. Этот ответ не имеет значения, и ответ не должен приниматься без решения, написанного ответчиком. - person Daniel Cheung; 03.03.2015
comment
@DanielCheung Это относится только к предыдущим версиям HTML, но я добавлю его к ответу, поскольку во многих случаях он все еще актуален. - person Patrick; 03.03.2015
comment
@DanielCheung Установка стиля подстановочных знаков для элемента с действительным идентификатором действительно решила проблему, поэтому ответ приемлем. Я бы скорее обвинил второй ответ, потому что он совершенно не признает, что OP уже использует инспектор стилей, уже использует !important и что никакие другие таблицы стилей не задействованы. - person Filburt; 03.03.2015

Возможно, у вас есть правило (в другой таблице стилей?), у которого есть селектор, который имеет класс элементов, который вы хотите стилизовать, но дополнительно имя класса элемента родительского или прародительского элемента. В этом случае этот конкретный стиль перевесит ваш стиль.

В этом случае вы можете добавить к своему правилу "!важно" (цвет: красный !важно; )...

или вы также можете добавить селекторы других стилей таблицы стилей к своему, чтобы этот стиль больше не перевешивал ваш.

Вы должны «осмотреть» элемент! (Щелкните по нему правой кнопкой мыши, «проверить элемент»), чтобы найти активные и перезаписанные правила для этого конкретного элемента! Вы найдете эту информацию в правом нижнем углу окна «инспектора», которое затем откроется. Наряду с текущими активными стилями вы найдете таблицу стилей, в которой определены стили.

person lotte-k    schedule 03.03.2015