Могу ли я переопределить inline!важно?
Если у вас
<div style="display: none !important;"></div>
есть ли способ переопределить это в таблице стилей, чтобы сделать его отображаемым?
желательно использовать что-то вроде этого:
div { display: block !important; }
6 ответов:
позвольте мне начать с того, что как правило, встроенные стили можете быть переопределен:
.override {color:red !important;}
<p style="color:blue;">I will be blue</p> <p style="color:blue;" class="override">But I will be red</p>
это поведение описано в спецификациях W3, где указано, что
!important
объявления не меняют специфику, а скорее приоритет за "нормальной" декларации.Это, как говорится, когда конфликтующие правила обоих
!important
флаг, специфичность диктует, что применяется встроенное правило-это означает, что для сценария OP нет способа переопределить inline!important
.
вы не можете переопределить встроенный CSS, если он был
!important
. Он имеет более высокий приоритет, чем стиль во внешнем файле CSS.однако, если вы хотите изменить некоторые действия позже, вы можете использовать немного JavaScript.
вы не можете переопределить встроенный стиль, имеющий
!important
. Первое предпочтение-это встроенный стиль.например: у нас есть класс
.styleT{float:left;padding-left:4px;width:90px;}
и в jsp
<div class="styleT" id="inputT" style="padding-left:0px;">
здесь не берет
padding-left:4px;
. он принимает классstyleT
кроме отступа-слева: 4px;. Там будетpadding-left:0px;
.
вы не можете переопределить встроенный CSS, имеющего
!important
, потому что он имеет более высокий приоритет, но, используя JavaScript, вы можете достичь того, чего вы хотите.
правила приоритета, когда два свойства CSS применяются к одному узлу:
!important
ударов не-!important
. Если поровну !важный. ,..
style
атрибут бьет css в файле. Если оба находятся в файлах CSS...идентификатор в селекторе CSS не превосходит ID. И больше идентификаторов бьют меньше. (и вы думали, что не было никакой причины для двух идентификаторов в селекторе.) Если же количество ID...
классы, или атрибуты типа
[name]
в селекторе, подсчитайте их; больше ударов меньше. Если все это одно и то же...имена тегов, как
span
илиinput
, больше ударов меньше.Итак, вы видите inline
!important
является высшим приоритетом.