一个border引发的血案
如果你要用CSS去表达元素没有边框,你会怎么表达? 是border:0呢? 还是border:none呢? 我听过很多人推荐使用border:none,因为其理由是客户端的渲染。 乍听之下会觉得:嗯,有道理,又学到东西了呵…… 其实,很多时候,代码是死的,没有绝对的好与坏! 在相对论面前,神马都是浮云…… 要想明白哪种写法最适合你当前的环境,那么就必须先了解这两种写法的含义及优缺点: 一、border:0 含义: 它代表着 边框:大小为0 ,在浏览器解析后的结果是没有边框 优点1: 在写的时候,少写三个字母,这代表在写代码时,这种写法的效率更高 优点2: 比另外一种写法少了三个字节,这代表它在体积上更节约了,减低了服务端的负担 缺点: 浏览器在解析它的时候,会认为是(边框:其它的默认渲染依然存在,比如solid?比如red?仅是大小为0) 二、border:none 含义: 它代表着 边框:没有 ,在浏览器解析后的结果,未必是所有元素都没有边框,试试input如何? 优点1: 浏览器在解析它的时候,会认为是(边框:什么也没有,不渲染任何样式),不同于border:0,它毕竟还是有渲染的,但border:none是彻底无视,所以当浏览器在看它border:none时,就选择了路过……! 缺点: 请参考border:0的优点 那么读到了这里,你会不会这样理解? border