高效整洁CSS代码原则 (下)

开发 前端
CSS是一组格式设置规则,用于控制Web页面的外观。通过使用CSS样式设置页面的格式,可将页面的内容与表现形式分离。本文呢主要介绍了如何实现高效整洁的CSS代码原则,希望对你有帮助,一起来看。

接上一篇高效整洁CSS代码原则 (上)

6. 适当的代码注释

代码注释可以让别人更容易读懂你的代码,且合理的组织代码注释,可使得结构更加清晰。你可以选择做的样式表的开始添加目录:

 

  1. /*------------------------------------   
  2. 1. Reset   
  3. 2. Header   
  4. 3. Content   
  5. 4. SideBar   
  6. 5. Footer   
  7. ----------------------------------- */ 

 

如此你代码的结构就一目了然,你可以容易的查找和修改代码。

而对于代码的主内容,也应适当的加以划分,甚至在有必要的地方在对代码加以注释说明,这样也有利于团队开发:

 

  1. /*** Header ***/   
  2. #headerheight:145pxposition:relative; }   
  3. #header h1width:324pxmargin:45px 0 0 20pxfloat:leftheight:72px;}   
  4.  
  5. /*** Content ***/   
  6. #content{ background:#fffwidth:650pxfloat:leftmin-height:600pxoverflow:hidden;}   
  7. #content h1{color:#F00}/* 设置字体颜色 */   
  8. #content .posts{ overflow:hidden; }   
  9. #content .recent{ margin-bottom:20pxborder-bottom:1px solid #f3f3f3position:relative
  10. overflow:hidden; }   
  11.  
  12. /*** Footer ***/   
  13. #footerclear:bothpadding:50px 5px 0overflow:hidden;}   
  14. #footer h4color:#b99d7ffont-family:ArialHelveticasans-seriffont-size:1.1em; } 

 

7. 给你的CSS代码排序

如果代码中的属性都能按照字母排序,那查找修改的时候就能更加快速:

 

  1. /*** 样式属性按字母排序 ***/   
  2. div{   
  3. background-color:#3399cc;   
  4. color:#666;   
  5. font:1.2em/1.4em ArialHelveticasans-serif;   
  6. height:300px;   
  7. margin:10px 5px;   
  8. padding:5px 0 10px 5px;   
  9. width:30%;   
  10. z-index:10;   

 

8. 保持CSS的可读性

书写可读的CSS将会使得更容易查找和修改样式。对于以下两种情况,哪种可读性更高,我想不言而明。

 

  1. /*** 每个样式属性写一行 ***/   
  2. div{   
  3. background-color:#3399cc;   
  4. color:#666;   
  5. font1.2em/1.4em ArialHelveticasans-serif;   
  6. height:300px;   
  7. margin:10px 5px;   
  8. padding:5px 0 10px 5px;   
  9. width:30%;   
  10. z-index:10;   
  11. }   
  12.  
  13. /*** 所有的样式属性写在同一行 ***/   
  14. div{ background-color:#3399cccolor:#666
  15. font1.2em/1.4em ArialHelveticasans-serifheight:300px
  16. margin:10px 5pxpadding:5px 0 10px 5pxwidth:30%z-index:10; } 

 

当对于一些样式属性较少的选择器,我会写到一行:

 

  1. /*** 选择器属性少的写在同一行 ***/   
  2. div{ background-color:#3399cccolor:#666;} 

 

对于这个规则并非硬性规定,但无论您采用哪种写法,我的建议是始终保持代码一致。属性多的分行写,属性少于3个可以写一行。

9. 选择更优的样式属性值

CSS中有些属性采用不同的属性值,虽然达到的效果差不多,当性能上却存在着差异,如

区别在于border:0把border设为0px,虽然在页面上看不见,但按border默认值理解,浏览器依然对border-width/border-color进行了渲染,即已经占用了内存值。而border:none把border设为"none"即没有,浏览器解析"none"时将不作出渲染动作,即不会消耗内存值。所以建议使用border:none;

同样的,display:none隐藏对象浏览器不作渲染,不占用内存。而visibility:hidden则会。

10. 使用<link>代替@import

首先,@import不属于XHTML标签,也不是Web标准的一部分,它对于较早期的浏览器兼容也不高,并且对于网站的性能有某些负面的影响。

11. 使用外部样式表

这个原则始终是一个很好的设计实践。不单可以更易于维护修改,更重要的是使用外部文件可以提高页面速度,因为CSS文件都能在浏览器中产生缓存。内置在HTML文档中的CSS则会在每次请求中随HTML文档重新下载。所以,在实际应用中,没有必要把CSS代码内置在HTML文档中:

 

  1. <style type="text/css" >   
  2. #container{ .. }   
  3. #sidebar{ .. }   
  4. </style> 

 

而是使用<link>导入外部样式表:

  1. <link rel="stylesheet" type="text/css" href="css/styles.css" /> 

 

12. 避免使用CSS表达式(Expression)

CSS表达式是动态设置CSS属性的强大(但危险)方法。Internet Explorer从第5个版本开始支持CSS表达式。下面的例子中,使用CSS表达式可以实现隔一个小时切换一次背景颜色:

 

  1. background-color: expression( (new Date()).getHours()%2 ? "#B8D4FF" : "#F08A00" ); 

 

如上所示,expression中使用了JavaScript表达式。CSS属性根据JavaScript表达式的计算结果来设置。

表达式的问题就在于它的计算频率要比我们想象的多。不仅仅是在页面显示和缩放时,就是在页面滚动、乃至移动鼠标时都会要重新计算一次。给CSS表达式增加一个计数器可以跟踪表达式的计算频率。在页面中随便移动鼠标都可以轻松达到10000次以上的计算量。

如果必须使用CSS表达式,一定要记住它们要计算成千上万次并且可能会对你页面的性能产生影响。所以,在非不得已,请避免使用CSS表达式。

13. 代码压缩

当你决定把网站项目部署到网络上,那你就要考虑对CSS进行压缩,出去注释和空格,以使得网页加载得更快。压缩您的代码,可以采用一些工具,如YUI Compressor,利用它可精简CSS代码,减少文件大小,以获得更高的加载速度。

到此高效整洁CSS代码原则就介绍完了,希望对大家有帮助。

【编辑推荐】

  1. CSS的未来:一些试验性CSS属性
  2. DIV+CSS的好处和意义
  3. Web移动应用 HTML5 CSS和JavaScript
  4. CSS实现HTML元素透明的那些事
  5. CSS自定义滚动条样式
责任编辑:于铁 来源: hi.baidu.com
相关推荐

2011-12-02 10:19:24

CSS

2011-06-03 15:06:30

CSS

2010-09-09 13:59:55

CSS

2010-09-14 13:49:38

CSS代码

2022-09-14 09:27:49

CSS架构代码

2012-07-10 13:57:19

Web前端

2010-08-31 13:32:12

CSS

2012-08-01 09:38:17

代码整洁

2012-08-01 09:23:31

代码

2021-01-06 14:42:09

前端Typescript代码

2021-03-07 09:19:31

React代码整洁代码的实践

2017-10-10 16:28:51

前端CSS建议

2010-08-31 09:52:45

CSS优化

2010-09-06 09:06:22

CSS

2020-12-09 10:49:33

代码开发GitHub

2020-02-29 16:00:20

代码开发程序员

2010-08-26 13:32:05

CSSmargin参数

2015-06-17 14:24:48

优秀程序员整洁代码

2020-03-28 14:57:29

JavaScrip代码函数

2010-09-01 12:43:47

CSSidclass
点赞
收藏

51CTO技术栈公众号