【发布时间】:2014-06-09 19:38:36
【问题描述】:
我受委托为网站编写登录页面。
问题出在:原开发者在主 css 文件中添加了“Universal Selector * Reset”:
* { //Universal Selector '*' Reset
margin: 0;
padding: 0;
}
然后围绕它构建网站样式。
不幸的是,这需要大量代码来处理表格、列表、标题等。
问题是: 有没有办法绕过单个对象(表、列表等)甚至一般页面的选择器(除了不包括 css 文件)?
编辑:有些人对我的问题感到困惑。绕过我的意思是忽略星号选择器而不是覆盖它...另外请注意,我正在尝试最小化额外代码。
编辑 2: 这是一个 jsFiddle,它说明了我的问题。
注意:“填充:初始;”似乎没有工作。
【问题讨论】:
-
你为什么不直接使用
table,list { margin: 1em; padding 1em;}? -
您是否尝试过使用
* { margin: initial; padding: initial; }之类的内容覆盖它? -
不只是提供一个更具体的选择器吗?
table { margin: 10px; }。当然,重点是消除浏览器之间默认样式的差异。为什么你要恢复到我不知道的那种不一致的样式。 -
问题是你不能覆盖任何东西,还是你想要一个更好的方法来覆盖所有东西?
-
@BenA.Noone 我不是说
initial有效,事实上我试过了,我知道它在任何浏览器中都不起作用(至少对于填充)。以下是如何使用脚本忽略*规则 demo
标签: javascript jquery html css stylesheet