我刚刚发现自己同时使用border: none
和border: 0
来重置级联中的边框。
是否有One True Way™重置已设置的边框?
答案 0 :(得分:1)
正如您应该知道的那样,border
是一个速记属性。您可能没有意识到的(事实上,对我来说也是新的)是这些值与速记属性本身无关,但每个属于一个简单的CSS边界属性(从技术上讲,这些都是所有方面的缩写。好吧,但我不会那样做):
none
是border-style
0
是border-width
作为补充说明,这些值中的每一个都是其各自的longhand属性的初始值。换句话说,声明border: none
和border: 0
在功能上是等效的 - 设置border: none
也会将border-width
设置为0
,设置border: 0
将同时将border-style
设置为none
。
因此没有“正确”的方式来使用border
简写来声明缺少边框。使用对你更有意义的。
答案 1 :(得分:1)
完全取决于你,有人说单向,有些人说另一个。 border: none
是'技术'方式,因为'none'是列出的边界允许值,但border: 0
基本上是一个短手版本,可以节省一些额外的字符。我甚至不知道我使用哪一个,不管怎么说都不会打扰我。
编辑:这是关于类似主题的另一个很好的对话(0对0em)...
CSS difference between 0 and 0em
答案 2 :(得分:-1)
从技术上讲,它应该是border:0< - 如果你使用的是短手,
OR border-style:none; < - 我更喜欢这个,但是如果一些char很重要......
简写是边框:[宽度] [样式] [颜色];
http://www.w3schools.com/css/css_border.asp(或正式规范:http://www.w3.org/TR/CSS2/box.html#border-properties)
注:正如下面的评论所指出的那样。 border: 0px;
是多余的,但border: 1px;
不是。当值>时,单位(em,ex,px等)不是可选的。 0.