我可以用类覆盖CSS #ID吗?

时间:2013-09-21 14:00:34

标签: css class overwrite

我正在使用票务服务(OK-Ticket)中的js-widget。此小部件的容器具有动态生成的ID。像

这样的东西
<li class="okticket">
    <div id="ok_5134e2847ffe8">
        // The widget stuff
    </div>
</li>

当然我不能用

覆盖样式
.okticket div {
    margin:0;
}

我可以使用!重要,但每个人都告诉你:“不要使用!重要”。这不是去这里的唯一方法吗?

4 个答案:

答案 0 :(得分:1)

不要使用!重要的是在一个地方。可以考虑使用这些情况。

另一种方法,您可以使用相同的#id选择器并编写自己的样式。 还有一种方法,使用父类和#id作为后代选择器 - 这也将覆盖原始的#id规则。

无需编写内联或重要内容!

答案 1 :(得分:1)

.okticket div添加ID,然后制作CSS #okdiv div {};

在CSS中#ID + Selector比#ID

更重要

演示http://jsfiddle.net/enapupe/WkwDH/

答案 2 :(得分:0)

另一种方法是在html中使用style属性

<li class="okticket">
    <div id="ok_5134e2847ffe8" style="margin:0">
        // The widget stuff
    </div>
</li>

答案 3 :(得分:0)

在这种情况下,更改class和id的位置,因为最后一个会覆盖类属性。