css - 嵌套时重置 css 列表计数和样式

标签 css

我有以下 html 代码(已简化

<ol class="step">
<li><p>some content</p></li>
<li><p>some content</p>
    <ul class="bull">
   <li><p>some nested content</p></li>
   <li><p>some nested content</p></li>
   <li><p>some nested content</p></li>
</ul>
</li>
<li><p>some content</p></li>
</ol>

我创建了一些 css 来使 step 类的列表项比正常字体大小大两倍。我已经使用 :before 类来实现这一点,并且在我的树中有一个嵌套列表(有序或无序)之前,它一切正常。

出于某种原因,我无法“重置”级联样式,因此欢迎就如何正确执行此操作提出任何建议。

这是我的 css,如果你使用它,你会注意到 ul 也有很大的数字,而实际上我只想再次拥有基本的简单光盘。

ol.step{
    counter-reset: li;
    list-style: none;
    -webkit-padding-start: 20px;
}

ol.step li:before{
    content: counter(li);
    counter-increment: li;
    font-size:  200%;
    font: Arial;
    position: absolute; 
    left: -20px;
    padding-top : 1px;
}

ol.step li{
display: block;
position: relative;
padding-left : 10px;
padding-top : 1px;
}

ul.bull {
    list-style-type: disc;
    counter-reset: li;
} 

那么我该怎么做才能“重置”我的嵌套列表并让它们表现良好?

提前致谢!

最佳答案

如果您希望 li 样式仅应用于 ol.step 下的 li,请使用直接后代 CSS 选择器:

ol.step > li:before {
    content: counter(li);
    counter-increment: li;
    font-size:  200%;
    font: Arial;
    position: absolute; 
    left: -20px;
    padding-top : 1px;
}

ol.step > li{
    display: block;
    position: relative;
    padding-left : 10px;
    padding-top : 1px;
}

关于css - 嵌套时重置 css 列表计数和样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15437088/

相关文章:

jquery - 垂直滚动不适用于叠加层

html - Bootstrap row-eq-height 它不起作用

<输入类型 ="?"的 CSS 选择器

使用 div 的 CSS 布局

HTML:导致问题的 2 个导航

php - 创建一个每周更改背景颜色的 PHP 变量

forms - CSS 伪选择器::before 和::after 将不会在 FF 44 和 IE11 中显示

html - 是否可以从开发者在CSS中使用 `text-decoration: underline;`创建下划线时更改为下划线高度?

javascript - 固定标题元素在窗口上移动减少

css - css3 是否可以垂直文本溢出?