我的样式表中有以下代码段。影响或目的是什么?
* {
margin:0;
padding:0;
top: 0px;
left: 0px;
}
答案 0 :(得分:11)
这是重置。之后所有元素都将有0个边距,填充等。
此类重置对于规范化行为(某些浏览器带有预定义的边距,填充等)非常有用,并可提高浏览器的视觉一致性。
答案 1 :(得分:8)
这是一个reset CSS。其目的是为所有(*
)元素删除默认的非零间距。所有浏览器都有一些默认样式表,它们彼此不是很一致。以<form>
为例。
注意:将left
和top
属性设置为0px
对我来说不合适。这很可能会导致绝对定位问题。绝对定位元素时,您可能只想定义它的垂直或水平偏移(不是两者),而保持另一个偏移不变。重置CSS不允许这样做,因为它为垂直和水平提供了值。您也可以从底部定位元素。如果你有重置,它将同时具有bottom
和top
,在大多数情况下不需要它,并且可能会改变元素的高度或不考虑其中一个偏移。在任何情况下,它都会给你一些不打算的东西并破坏你的布局。
对于想要了解更多信息的人:http://www.w3.org/TR/CSS2/visuren.html#absolute-positioning
答案 2 :(得分:1)
它将包含在内的规则应用于页面的所有元素;为级联规则创建可预测的基线。
这种技术称为“重置”(google用于“CSS重置”),是一种使用不同的默认CSS规则解析不同浏览器的方法。
应尽早应用这些规则,通常是在首次加载的CSS工作表的开头。
答案 3 :(得分:0)
您的代码段的目的是重置边距,填充并在Web浏览器中将位置设置到视口的左上角。
答案 4 :(得分:0)
Estric simbol被称为all / everything所以这意味着CSS将在所有elemet上实现并将值设置为参数化。