在CSS中设置border属性的正确值是什么?
我刚刚注意到我自己同时使用了border: none
和border: 0
来重置级联中的边界。在CSS中设置border属性的正确值是什么?
是否有One True Way™来重置已设置的边界?
正如您应该知道的那样,border
是一种速记属性。你可能没有意识到(事实上,对于我来说也是新事物),这些值并不属于速记属性本身,而是属于CSS边界属性之一(从技术上讲,这些属性是所有各方的简写为很好,但我不会给):
-
none
为border-style
-
0
值是border-width
作为附加的注释的值,这些值是其初始值为适当的longhand财产。换句话说,声明border: none
和border: 0
在功能上是等效的 - 设置border: none
也将设置border-width
到0
,并且设置border: 0
也将设置border-style
到none
。
所以没有“正确”的方式来使用border
简写来声明缺少边界。使用哪一个对你更有意义。
完全取决于你,一些人说一种方式,一些人说另一种。 border: none
是这样做的'技术'方式,因为'none'是列出的边界允许值,但border: 0
基本上只是一个简短版本来节省一些额外的字符。我甚至不知道我使用哪一个,它不会真的让我感到困扰。
编辑:这里有一个类似的话题另一个很好的交谈(0对0EM)...
CSS difference between 0 and 0em
从技术上讲,它应该是边境:0 < - 如果你正在使用的手短,
OR border-style:none; < - 我喜欢这个,但如果几个字符的问题...
简写为边界:[宽度] [风格] [颜色]
http://www.w3schools.com/css/css_border.asp(或正式规范:http://www.w3.org/TR/CSS2/box.html#border-properties)
注:由于下面的评论中指出。 border: 0px;
是多余的,但border: 1px;
不是。当数值> 0时,单位(em,ex,px等)不是可选的。
那么我想知道哪一个是正确的方式......我认为我可以做对了,而不是依靠浏览器怪癖(如果有的话)。 – alex 2010-06-24 05:41:59