问题描述

在我的网站上,我使用了 reset.css 。它正好添加到列表样式中:

ol, ul {
    list-style: none outside none;
}
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
    background: none repeat scroll 0 0 transparent;
    border: 0 none;
    font-size: 100%;
    margin: 0;
    outline: 0 none;
    padding: 0;
    vertical-align: baseline;
}

问题是所有列表样式都设置为 NONE 。我想恢复原始列表样式 (默认),仅适用于网站 sub-pages 上的所有列表 (.my_container 中的所有列表) 。

当我尝试设置 list-style-typeinherit 的设置是不继承浏览器的默认样式只为这个 CSS 属性。

有没有办法继承原始浏览器的样式的某些属性,而不修改 reset.css?

最佳解决方案

我曾经设置这个 CSS 来删除重置:

ul { 
   list-style-type: disc; 
   list-style-position: inside; 
}
ol { 
   list-style-type: decimal; 
   list-style-position: inside; 
}
ul ul, ol ul { 
   list-style-type: circle; 
   list-style-position: inside; 
   margin-left: 15px; 
}
ol ol, ul ol { 
   list-style-type: lower-latin; 
   list-style-position: inside; 
   margin-left: 15px; 
}

编辑:当然有一个特定的课程…

次佳解决方案

我认为这其实是你要找的:

.my_container ul
{
    list-style: initial;
    margin: initial;
    padding: 0 0 0 40px;
}

.my_container li
{
    display: list-item;
}

第三种解决方案

http://www.w3schools.com/tags/tag_ul.asp

ul { 
    display: block;
    list-style-type: disc;
    margin-top: 1em;
    margin-bottom: 1em;
    margin-left: 0;
    margin-right: 0;
    padding-left: 40px;
}

第四种方案

你不能。每当应用任何样式表分配属性到元素时,没有办法得到浏览器默认值,对于元素的任何实例。

reset.css 的 (有争议的) 想法是摆脱浏览器默认设置,以便您可以从干净的桌面开始自己的样式。没有版本的 reset.css 完全完成,但是在他们做的程度上,使用 reset.css 的作者应该完全定义渲染。

参考文献

注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛