如何覆盖css的*星号?

时间:2013-07-15 15:58:58

标签: css css3 override

我正在使用一个JQuery插件,其中包含了这个样式的style.css:

    * {
padding: 0px;
margin: 0px;
-webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

但是,对于我的CSS中的其他元素,它会导致问题。对于存在问题的元素,如何阻止*将css应用于某些类?

2 个答案:

答案 0 :(得分:3)

您可以将类添加到div中(如meeb0建议的那样),而不是删除块,并编辑块以读取类似于插件的设计方式。

HTML:

<div class="jqueryplugin"></div>

CSS:

.class, .class  * {
padding: 0px;
margin: 0px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

上面的css声明插件容器及其中的所有内容都应该继承所声明的规则。

答案 1 :(得分:2)

您可以删除该区块。

* =通配符意味着所有div都会将此样式应用于所有

您应该在CSS中使用重置样式以确保浏览器兼容性,以便margin:0;&amp; padding:0;正在修剪浏览器或用户首选项添加的任何其他padding &/or margin

如果您不想删除。将插件包装在<div class="jquerypluginwrapper"></div>中,然后插入CSS:

.jquerypluginwrapper{ margin:0; padding:0; }

这意味着除非您将类添加到另一个div,否则它不会与其他任何内容冲突。