Jump to content
  • 0

list-style не наследуется


Evkaky
 Share

Question

А тут пишут, что наследуется...

http://htmlbook.ru/css/list-style

Тут вообще маркеров нету по умолчанию

http://jsfiddle.net/jKedb/

С ума сойти, ну...

Ладно, прописываю у себя в боди list-style: none;

<ul id="ololosh">
<li>1</li>
<li>
<ul>
<li>111</li>
<li>222</li>
</ul>
</li>
<li>3</li>
</ul>

Маркеры есть для обоих списков!!!

Прописываю

#ololosh {
list-style: none;
}

Для внешнего <ul> они пропали, а для внутреннего остались.

Получается, не наследуется он...

Link to comment
Share on other sites

5 answers to this question

Recommended Posts

  • 0

Добрый день,

Вы обратились в стилях к списку по идентификатору - стили и применились только к конкретному списку с этим идентификатором. Обращайтесь в стилямх к ul, чтобы наследовалось

Link to comment
Share on other sites

  • 0
Тут [jsfiddle.net] вообще маркеров нету по умолчанию

Это из-за включенной слева галки «Normalized CSS», которая по факту подключает к странице CSS reset следующего содержания:


body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td {
margin:0;
padding:0;
}
table {
border-collapse:collapse;
border-spacing:0;
}
fieldset,img {
border:0;
}
address,caption,cite,code,dfn,em,strong,th,var {
font-style:normal;
font-weight:normal;
}
ol,ul {
list-style:none;
}
caption,th {
text-align:left;
}
h1,h2,h3,h4,h5,h6 {
font-size:100%;
font-weight:normal;
}
q:before,q:after {
content:'';
}
abbr,acronym { border:0;}

Link to comment
Share on other sites

  • 0

Вообще интересная вещь. С одной стороны, видно, что наследование всё-таки работает — li-шки прекрасно подхватили стиль #ололоша, как и сказано в спеке:

Inheritance will transfer the 'list-style' values from OL and UL elements to LI elements.

С другой стороны, у вложенного списка остался дефолтный браузерный стиль. Объяснение я вижу в следующем фрагменте спеки:

User agents must first assign a specified value to each property based on the following mechanisms (in order of precedence):

  1. If the cascade results in a value, use it.
  2. Otherwise, if the property is inherited and the element is not the root of the document tree, use the computed value of the parent element.

т.е. унаследованное значение применяется лишь в том случае, если для самого элемента не нашлось никакого значения в каскаде — даже во встроенных браузерных стилях. А для ul/ol встроенные браузерные стили есть. Но сам не уверен, надо уточнить у кого-нибудь более знающего...

Link to comment
Share on other sites

  • 0
т.е. унаследованное значение применяется лишь в том случае, если для самого элемента не нашлось никакого значения в каскаде

Тоже пришёл к такому выводу.

Это же и объясняет странные вещи при наследовании text-decoration. Оно наследуется...но только не для ссылок <a>. Как раз из-за того, что у них прописан свой, дефолтный text-decoration, который никакое наследование не сможет перебить

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy