当前位置:首页 > 技术文档 > 正文

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

作者:遗忘城市 来源:hi.baidu.com 【 】 浏览: 添加日期:2010-11-07 我要评论(9)     

6. 适当的代码注释

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

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

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

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

/*** Header ***/
#header{ height:145px; position:relative; }
#header h1{ width:324px; margin:45px 0 0 20px; float:left; height:72px;}

/*** Content ***/
#content{ background:#fff; width:650px; float:left; min-height:600px; overflow:hidden;}
#content h1{color:#F00}/* 设置字体颜色 */
#content .posts{ overflow:hidden; }
#content .recent{ margin-bottom:20px; border-bottom:1px solid #f3f3f3; position:relative; overflow:hidden; }

/*** Footer ***/
#footer{ clear:both; padding:50px 5px 0; overflow:hidden;}
#footer h4{ color:#b99d7f; font-family:Arial, Helvetica, sans-serif; font-size:1.1em; }

7. 给你的CSS代码排序

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

/*** 样式属性按字母排序 ***/
div{
background-color:#3399cc;
color:#666;
font:1.2em/1.4em Arial, Helvetica, sans-serif;
height:300px;
margin:10px 5px;
padding:5px 0 10px 5px;
width:30%;
z-index:10;
}

8. 保持CSS的可读性

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

/*** 每个样式属性写一行 ***/
div{
background-color:#3399cc;
color:#666;
font: 1.2em/1.4em Arial, Helvetica, sans-serif;
height:300px;
margin:10px 5px;
padding:5px 0 10px 5px;
width:30%;
z-index:10;
}

/*** 所有的样式属性写在同一行 ***/
div{ background-color:#3399cc; color:#666; font: 1.2em/1.4em Arial, Helvetica, sans-serif; height:300px; margin:10px 5px; padding:5px 0 10px 5px; width:30%; z-index:10; }

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

/*** 选择器属性少的写在同一行 ***/
div{ background-color:#3399cc; color:#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文档中:

<style type="text/css" >
#container{ .. }
#sidebar{ .. }
</style>

而是使用<link>导入外部样式表:<link rel="stylesheet" type="text/css" href="css/styles.css" />

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

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

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

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

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

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

13. 代码压缩

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

(如果您觉得本站不错,请告诉身边的朋友,或转载到论坛、百度知道、贴吧等,记得带网址哟,不胜感激!)

〖技术文档〗Tags: css代码 css css书写规范

所属专题:常用CSS技巧

更多评论(9)..会员评论

xuzhutage(221.225.*.*) 发表于:2013-07-12 17:18:13
真心不错的网站啊
sk417942048(114.243.*.*) 发表于:2011-08-22 17:55:00
很好,很强大!认真学习了
Hgangan(123.117.*.*) 发表于:2011-04-29 20:03:55
这个网站真不错
管理员回复:欢迎常来
gomonday(120.42.*.*) 发表于:2011-03-23 23:31:17
站长辛苦了,看了都能学到一些东西,呵呵
管理员回复:欢迎常来
huihuang(121.29.*.*) 发表于:2011-03-09 10:04:52
站长您好 前几天浏览咱们网站发现有个在线把css代码进行压缩的页面,可以除去多余空格并可以简化代码,是可逆操作的!你能给提供下地址吗?
hui87667137(59.61.*.*) 发表于:2011-02-03 15:37:09
请问站长,为什么我在一个DIV里输入文字,DIV已定义了宽度。而文字超过DIV宽度时不会自动换行,而是超出DIV宽度呢?
管理员回复:是不是输入一串连续的英文或数字了?
donnie86(202.122.*.*) 发表于:2010-12-15 21:09:10
你好!第11节使用外部样式表中: “因为CSS文件都能在浏览器中产生缓存。内置在HTML文档中的CSS则会在每次请求中随HTML文档重新下载”这句话不是很理解,刷新页面时CSS文件不用重新加载吗?那为什么CSS变了,我们刷新页面会变化呢?还是CSS文件有一个最近修改时间标记,呵呵,不甚感激!
管理员回复:是的,有个时间戳之类,如果服务器和本地的一样,则不会重新下载,如果不一样则更新
f6174(118.117.*.*) 发表于:2010-12-03 17:00:46
这个站真好。站长辛苦了。
管理员回复:欢迎常来

出差旅游免费预订酒店

【视频教程】新手常见问题