2015-09-09 3 views
0

Это мой CSS элемент:Почему свойство css «важно» не работает?

html, body, div, ul, ol, li, dl, dt, dd, h1, h2, h3, h4, h5, h6, pre, form, p, blockquote, fieldset, input, abbr, article, aside, command, details, figcaption, figure, footer, header, hgroup, mark, meter, nav, output, progress, section, summary, time, #ariane, #ariane1, #ariane2 { 
 
    margin: 0px; 
 
    padding: 0px; 
 
    border: 0px none; 
 
    outline: 0px none; 
 
    font-size: 100%; 
 
    vertical-align: baseline; 
 
    list-style-type: none; 
 
}
<ul style="list-style-type:decimal!important;"> 
 
    <li>test1</li> 
 
    <li>test2</li> 
 
    <li>test3</li> 
 
</ul>

Проблема:

Стиль элемента применяется вместо list-style-type:decimal!important; несмотря на я поставил свойство "Важно!";

Когда я проверить элемент ul я считаю, что свойство list-style-type: none; подчеркнут и проверяется, но list-style-type: decimal !important; просто проверяется, но это нормально, потому !important.

Так почему же цифры не разыгрываются и не думают иначе? и почему цифры отображаются только тогда, когда я снял флажок list-style-type: none;?

+0

Ответ на этот вопрос верен, но нужно отметить одно: добавление '! Important' к встроенному стилю не нужно, так как встроенные стили всегда будут переопределять все, что написано в таблице стилей. –

+1

@Mike Christensen: Не всегда - когда таблица стилей имеет значение '! Important', а встроенный стиль не выигрывает,' 'important' выигрывает, и единственный способ переопределить это - иметь встроенный стиль'! Important'. – BoltClock

+0

@BoltClock - Ах да, вы правы. Просто перечитайте спецификацию снова .. –

ответ

8

Ваш первоначальный CSS применяет тип стиля списка как к UL, так и к LI, over-ride применяется только к UL. Таким образом, LI остается установленным в исходное правило, установленное в вашем CSS.

Смежные вопросы