编写完美CSS代码五个必要条件

开发 前端
每个人都可以编写CSS代码,甚至你现在已经让它为你的项目工作了,可是如何编写完美的CSS代码呢,这里向大家描述一下编写完美CSS代码五个必要条件,希望对你的学习有所帮助。

这里向大家描述一下编写***CSS代码五个必要条件,主要包括关于CSS重置,CSS属性的排序,CSS样式的组织,保持一致性等内容,相信通过本文的学习你对如何编写CSS代码会有深刻的认识。

写出***CSS代码的5个重要方面

每个人都可以编写CSS代码,甚至你现在已经让它为你的项目工作了。我们在51cto.com中也一直与大家讨论,学习CSS编码与CSS技巧。但是CSS还可以更好吗?开始用这5个Tips改进你的CSS吧!

一、关于CSS重置

  首先,很认真的告诉你,总是要重置某些分类。无论你是使用EricMeyerReset、YUIReset或者你自己编写的重置代码,只要使用就对了。

  它能很简单的移除所有元素的填充(padding)和边距(margin):

ExampleSourceCode

  1. html,body,div,h1,h2,h3,h4,h5,  
  2. h6,ul,ol,dl,li,dt,dd,p,blockquote,  
  3. pre,form,fieldset,table,th,td{margin:0;padding:0;} 

  EricMeyerReset和YUIReset都是非常强大的,但是对于我而言,它们走的太远了。我觉得你最终需要重置一切,然后重新定义所有元素的属性。这就是为什么EricMeyer推荐更有效的使用(重置样式表),而你不要只是使用他的重置样式表,将它拖放到你的项目中。调整它(的重置样式表),建立属于自己的重置样式表。

  请停止使用:

ExampleSourceCode

  1. *{margin:0;padding:0;}  
  2.  

  花更多的时间去制作它,当你移除了填充(padding)你认为单选按钮会发生什么变化?表单元素有时能够做些时髦的事情,所以最有效的方式就是将他们独立。

二、CSS属性的排序

  一个小的测试,这个例子就是要让你思考如何更快的找到右边距属性?

ExampleSourceCode

  1. Example#1  
  2. div#headerh1{  
  3. z-index:101;  
  4. color:#000;  
  5. position:relative;  
  6. line-height:24px;  
  7. margin-right:48px;  
  8. border-bottom:1pxsolid#dedede;  
  9. font-size:18px;  
  10. }  
  11.  
  12. Example#2  
  13. div#headerh1{  
  14. border-bottom:1pxsolid#dedede;  
  15. color:#000;  
  16. font-size:18px;  
  17. line-height:24px;  
  18. margin-right:48px;  
  19. position:relative;  
  20. z-index:101;  
  21. }  
  22.  

  你不能告诉我Example#2不能更快的找到右边距属性。根据字母排序你的元素属性。一致的创建你的CSS,将帮助你节省花费在寻找一个特殊属性的时间。

  我知道一些人用这样的方法去组织代码,其他人又用另一种方法去组织,但是在我的公司,我们协商一致做出决定,所有的代码都将按照字母排序来组织。通过这样组织代码与其他人协同工作一定是有帮助的。当我碰到属性没有按照字母排序的层叠样式表我每一次都会退缩。#p#

三、CSS样式的组织

  你应该组织你的样式表以致相关的内容靠在一起,更简单的找到想要的。使用更有效的注解。举个例子,这是我如何构造我的层叠样式表:

ExampleSourceCode

  1. /*****Reset*****/  
  2. 移除元素的填充(padding)和边距(margin)。  
  3. /*****BasicElements*****/  
  4. 定义基本元素的样式:body,h1-h6,ul,ol,a,p,等.  
  5. /*****GenericClasses*****/  
  6. 定义简单的风格,好像浮动的某一侧,移除元素的下边距,  
  7. 等当然,它们大部分都与我们希望的语义不相关,但是它们是高效处理代码所必须的。  
  8. /*****BasicLayout*****/  
  9. 定义基本的模板:header,footer等.帮助定义网页布局的基本元素  
  10. /*****Header*****/  
  11. 定义所有Hearder元素  
  12. /*****Content*****/  
  13. 定义所有内容框内的元素  
  14. /*****Footer*****/  
  15. 定义所有Footer的元素  
  16. /*****Etc*****/  

定义其他的选择器。通过注解和归类相似元素的分组,将更快的找到你想要的。

四、保持一致性

  无论你决定使用什么方式去编写代码,保持一致。我已经对全部放在1行VS多行的CSS编写编写方式的争论感到乏味和疲倦。这是不需要争辩的。每个人都有自己的观点,所以选择一种你喜欢的工作方式,并在所有的样式表中保持一致。

  就我个人而言,我将使用两者结合的方式。如果一个选择器超过了3个属性,我将截断它采用多行的方式编写。

ExampleSourceCode 

  1. div#header{float:left;width:100%;}  
  2. div#headerdiv.column{  
  3. border-right:1pxsolid#ccc;  
  4. float:rightright;  
  5. margin-right:50px;  
  6. padding:10px;  
  7. width:300px;  
  8. }  
  9. div#headerh1{float:left;position:relative;width:250px;}  

  所以找到你喜欢的工作方式然后保持一致。

五、从正确的地方开始

  在完成标记语言之前不要去尝试靠近你的样式表。

  当我准备分割一张网页的时候,创建CSS文件之前,我需要预览并且标记body开标签到body的闭合标签之间的所有文档。我不会增加额外的DIV,ID,或者类选择器。我将会添加一些一般的DIV,就好像hearder、content、footer.因为我知道这些东西是现实存在的。利用CSS子选择器指定子元素;不要只是机械的给元素添加类或者ID选择器。记住:没有一个良好的格式化文档(或者标记结构)CSS是无价值的。
 

【编辑推荐】

  1. 轻松实现CSS样式实时切换技巧
  2. 专家推荐三大“***”CSS技巧!
  3. CSS2.0中最常用的十八般兵器
  4. 解读DIV CSS网页布局中CSS无效十个原因
  5. 解读CSS中position属性四大可选值用法

 

 

责任编辑:佚名 来源: 52css.com
相关推荐

2010-09-01 11:08:09

CSS

2010-09-10 15:23:54

CSS匹配CSS

2021-04-10 16:09:18

人工智能AI深度学习

2011-05-26 11:03:13

2020-02-02 16:58:14

人工智能技术深度学习

2011-06-28 10:45:00

2013-11-04 09:58:15

大数据网络视频

2017-09-25 21:00:44

代码开发完美

2018-03-29 23:01:01

网络融合无线网络固网

2017-08-28 14:58:19

CSSFlexbox注释格式优化

2016-09-07 19:58:47

CSS代码Web

2010-09-29 16:19:53

2023-07-06 14:37:05

2023-02-26 23:23:36

CSS开发Web

2010-08-31 13:32:12

CSS

2021-04-07 15:14:19

区块链去中心化工具

2017-10-10 16:28:51

前端CSS建议

2021-12-04 23:10:02

Java代码开发

2021-07-16 10:48:49

云计算边缘计算数据驱动

2017-08-25 14:24:10

点赞
收藏

51CTO技术栈公众号