+ -
当前位置:首页 → 问答吧 → CSS经验分享:书写高效CSS注意的七个方面

CSS经验分享:书写高效CSS注意的七个方面

时间:2010-02-05

来源:互联网

一、使用外联样式替代行间样式或者内嵌样式 
不推荐使用行间样式
复制代码
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <title>Page title - 52css.com</title>
  6. </head> 
  7. <body>
  8. <p style="color: red"> ... </p> 
  9. </body> 
  10. </html> 
 不推荐使用内嵌样式
复制代码
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html lang="en"> 
  2. <head>
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  4. <title>Page title - 52css.com</title> 
  5. <style type="text/css" media="screen">
  6. p { color: red; } 
  7. </style> 
  8. </head> 
  9. <body>... </body> 
  10. </html> 

 推荐使用外联样式
复制代码
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
  2. <html lang="en">
  3. <head> 
  4. <meta http-equiv="content-type" content="text 
  5. <title>Page title - 52css.com</title> 
  6. <link rel="stylesheet" href="name.css" type="text/css" media="screen" /> 
  7. < /head> 
  8. <body> ... </body> 
  9. </html> 

二、建议使用 link 引入外部样式表

  为了兼容老版本的浏览器,建议使用 link 引入外部样式表的方来代替 @import导入样式的方式. 
译者注: @import是CSS2.1提出的所以老的浏览器不支持,点击查看 @import的兼容性。
  @import和link在使用上会有一些区别, 利用二者之间的差异,可以在实际运用中进行权衡。 
  关于@import和link方式的比较在52CSS.com上有几篇文章可以拓展阅读。
  不推荐@import导入方式
复制代码
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> 
  2. <html lang="en">
  3. <head> 
  4. <meta http-equiv="content-type" content="text 
  5. <title>Page title - 52css.com</title> 
  6. <style type="text/css" media="screen"> 
  7. @import url("styles.css");
  8. </style>
  9. </head>
  10. <body> ... </body>
  11. </html> 

推荐引入外部样式表方式
复制代码
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html lang="en"> <head>
  2. <meta http-equiv="content-type" content="text 
  3. <title>Page title - 52css.com</title>
  4. <link rel="stylesheet" href="name.css" type="text/css" media="screen" />
  5. </head> 
  6. <body> ... </body> 
  7. </html>

三、使用继承 
复制代码
  1. 低效率的
  2. p{ font-family: arial, helvetica, sans-serif; }
  3. #container { font-family: arial, helvetica, sans-serif; }
  4. #navigation { font-family: arial, helvetica, sans-serif; }
  5. #content { font-family: arial, helvetica, sans-serif; }
  6. #sidebar { font-family: arial, helvetica, sans-serif; }
  7. h1 { font-family: georgia, times, serif; } 
  8. 高效的
  9. body { font-family: arial, helvetica, sans-serif; } 
  10. body { font-family: arial, helvetica, sans-serif; }
  11. h1 { font-family: georgia, times, serif; } 

四、使用多重选择器 
复制代码
  1. 低效率的 
  2. h1 { color: #236799; } 
  3. h2 { color: #236799; }
  4. h3 { color: #236799; }
  5. h4 { color: #236799; } 
  6. 高效的h1, h2, h3, h4 { color: #236799; } 

五、使用多重声明
复制代码
  1. 低效率的
  2. p { margin: 0 0 1em; }
  3. p { background: #ddd; }
  4. p { color: #666; } 
  5. 译者注: 对于十六进制颜色值,个人偏向于色值不缩写且英文字母要大写的方式. 
  6. 高效的
  7. p { margin: 0 0 1em; background: #ddd; color: #666; } 

  六、使用简记属性 
复制代码
  1. 低效率的 
  2. body { font-size: 85%; font-family: arial, helvetica, sans-serif; background-image: url(image.gif); background-repeat: no-repeat; background-position: 0 100%; margin-top: 1em; margin-right: 1em; margin-bottom: 0; margin-left: 1em; padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; border-style: solid; border-width: 1px; border-color: red; color: #222222; 
  3. 高效的 
  4. body { font: 85% arial, helvetica, sans-serif; background: url(image.gif) no-repeat 0 100%; margin: 1em 1em 0; padding: 10px; border: 1px solid red; color: #222; } 

七、避免使用 !important 
复制代码
  1. 慎用写法
  2. #news { background: #ddd !important; } 
  3. 特定情况下可以使用以下方式提高权重级别
  4. #container #news { background: #ddd; }
  5. body #container #news { background: #ddd; } 

 


作者: deepblue   发布时间: 2010-02-05

这个不错

作者: memory   发布时间: 2010-02-05

值得学习啊

作者: xhot   发布时间: 2010-02-05

这个真不错!

作者: aluo   发布时间: 2010-02-05

为什么避免使用!important?

作者: langziyang   发布时间: 2010-02-05

学习下
。。

作者: xiaohufei   发布时间: 2010-02-06

支持下

作者: xxx   发布时间: 2010-02-09

呵呵 还不错

作者: 上课睡觉   发布时间: 2010-02-09

有道理,最好有个全局的global样式。

作者: 608bu   发布时间: 2010-02-11

支持楼主!!!

作者: shamoguhun   发布时间: 2010-06-13

顶一个

作者: zhsanshi   发布时间: 2010-06-14

谢谢分享  

作者: 岂悠   发布时间: 2010-06-14

    

作者: phpweber   发布时间: 2010-08-25

相关阅读 更多