zoukankan      html  css  js  c++  java
  • 一个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:0是为了服务端而服务的,它算是减轻了服务器的压力 border:none是为了客户端而服务的,它算是减轻了浏览器的压力

    那么,你现在决定了选择哪种写法?

    我个人是无论大小网站,基本都选择border:0的 因为就网站而言,我觉得服务器的压力大于浏览器,因为服务器只有一个,而浏览器,有N个…… 如果你的是大网站,你的服务器有多牛?千万别小看一句写法少了三个字节,千万别认为是"三个字节而已" 反之,如果是小网站,你的代码要有多复杂,才会让浏览器负荷到造成你浏览产生困扰的地步?从而必须要选择border:none去优化? 或许你不认同这种观点,那么我们换一种观点?用一些小学知识去理解怎么样?
    OK!
    border:0有两个优点; border:none只有一个优点;

     二大于一 YES! border:0赢了!Yeah~

  • 相关阅读:
    GitHub统计
    不错的第三方控件
    仿射变换(CGAffineTransform)使用小结
    AffineTransform(仿射变换)
    使用CAShapeLayer实现复杂的View的遮罩效果
    使用CAShapeLayer实现一个音量大小动态改变的控件
    window10 Docker仓库访问
    postgresql从timestamp(6)复制到timestamp(0),时间会变
    在编译Dll文件的时候遇到dll 链接不一致的问题
    qtquery 取列的值
  • 原文地址:https://www.cnblogs.com/hnyei/p/2227402.html
Copyright © 2011-2022 走看看