2012-03-09 107 views
9

我想把这个CSS元素恢复到默认设置,我无法弄清楚如何覆盖这些列表样式的CSS元素。他们在另一个样式表上,我不能改变,但我链接到。如果你知道如何,请帮助。列表样式的CSS覆盖回到默认值

ol li { 
    list-style: decimal; 
} 
ol { 
    list-style: decimal outside; 
} 
+0

我的意思是默认根据浏览器如何理解OL和李 – Blynn 2012-03-09 14:59:51

回答

15

使用!important,例如:

ol li { 
    list-style: inherit !important; 
} 

ol { 
    list-style: inherit !important; 
} 
+1

我只会用重要的作为最后的手段!它否定了特殊性,这可能会产生意想不到的后果,并使维护成为一场噩梦。这在技术上不是错误的,但这不是最佳实践。 – chipcullen 2012-03-09 15:08:38

+0

如果您澄清'!important'应该只用于像这样的情况下,那么您将无法更改样式表,但您必须覆盖它。 – 2012-03-09 15:10:12

+5

事实并非如此。考虑:'button:active {color:red; }按钮:first-child {color:blue; }'。我希望所有活动按钮的文本都是红色的,但第一个按钮的文本应该是蓝色的。这两个选择器具有相同的特性,并且只有规则顺序才会暂时确定结果(这很糟糕)。在这种情况下,我会把'button:active {color:red!important; }'以避免选择器膨胀,因为我知道:在这种情况下活动状态确实是最重要的。 http://jsfiddle.net/ygcYG/ – 2012-03-09 15:22:21

0

我会去尝试使用特异性设置为任何你想要的造型里。你有一个你可以挂钩的父元素吗?就像,如果是用类容器一个div,这样做:

.container ol li { 
    /* whatever you want */ 
} 
3

这不建议使用重要的是,曾经真的。你可以做什么chipcullen上面所说的,加入容器中,或者如果你想要一个简单的覆盖,将工作无论什么时候,你可以做这样的事情:

body ol { 
    margin: 1em 0; 
    padding: 0 0 0 40px; 
} 

body ol li { 
    list-style-type: decimal; 
} 

我把里面的值应该重置浏览器默认值,取自normalize.css

1

您可能需要:

ol li { display: list-item; }