1. 合理运用Reset
这可以简单到仅仅将所有元素中的margin和padding属性去掉:
html, body, div, h1, h2, h3, h4, h5, h6, ul, ol, dl, li, dt, dd, p, blockquote,
pre, form, fieldset, table, th, td { margin: 0; padding: 0; }
pre, form, fieldset, table, th, td { margin: 0; padding: 0; }
2. 按字母排序
div#header h1 {
border-bottom: 1px solid #dedede;
color: #000;
font-size: 18px;
line-height: 24px;
margin-right: 48px;
position: relative;
z-index: 101;
}
border-bottom: 1px solid #dedede;
color: #000;
font-size: 18px;
line-height: 24px;
margin-right: 48px;
position: relative;
z-index: 101;
}
经过排序的属性列表很容易进行查找。
3. 有组织的
你应该组织你的样式,这样你就可以比较容易的找到想要的内容以及放在一起的相关条目。这可以使用注释的方法。例如,我是这样组织我的样式表的:
/*****Reset*****/
Reset
/*****Basic Elements*****/
为基本元素定义样式: body, h1-h6, ul, ol, a, p, etc.
/*****Generic Classes*****/
定义一些单独的样式,比如,浮动、去掉元素的底部边距等。
是的,可能他们不够语义化,但是,它们对有效的编码是很有效的。
/*****Basic Layout*****/
定义基本模板: 头部、底部、等,用来定义网站的基本结构
/*****Header*****/
定义头部的所有元素
/*****Content*****/
定义内容区域的所有元素
/*****Footer*****/
底部样式
/*****Etc*****/
继续定义其它样式通过使用注释和对相似元素进行分组,可以更快的找到你需要的内容。
Reset
/*****Basic Elements*****/
为基本元素定义样式: body, h1-h6, ul, ol, a, p, etc.
/*****Generic Classes*****/
定义一些单独的样式,比如,浮动、去掉元素的底部边距等。
是的,可能他们不够语义化,但是,它们对有效的编码是很有效的。
/*****Basic Layout*****/
定义基本模板: 头部、底部、等,用来定义网站的基本结构
/*****Header*****/
定义头部的所有元素
/*****Content*****/
定义内容区域的所有元素
/*****Footer*****/
底部样式
/*****Etc*****/
继续定义其它样式通过使用注释和对相似元素进行分组,可以更快的找到你需要的内容。
4. 一致性原则
无论你现在以何种方式编码,保持下去。我十分讨厌关于完全单行或者完全多行的争议,这本身是没有什么可争议的! 每个人都有自己的看法,所以就用你认为对的并自始至终保持下去。
就我个人而言,我使用混合模式,如果一个样式有超过3条属性,我就采用多行:
div#header { float: left; width: 100%; }
div#header div.column {
border-right: 1px solid #ccc;
float: right;
margin-right: 50px;
padding: 10px;
width: 300px;
}
div#header h1 { float: left; position: relative; width: 250px; }
div#header div.column {
border-right: 1px solid #ccc;
float: right;
margin-right: 50px;
padding: 10px;
width: 300px;
}
div#header h1 { float: left; position: relative; width: 250px; }
我使用这种方法是因为我的文本编辑器一行在换行前正好能容纳大概3个属性,如果没有太多的属性,显然单行要比多行更易读。
5. 从正确的地方开始
在你写好你的标签之前不要动你的样式文件
当我准备开工的时候,在我创建一个CSS文件之前,我检查并对整个文档进行编码(HTML),从开始body标签到结束整个body标签。不添加任何多余的div、id或class。我会添加一些通用的div,比如头部,内容,底部,因为我知道这些东西肯定会有。
通过先编码整个文档,你可以避免出现多DIV症或多类症,这些毛病有的时候可能是致命的! 你只需要在你开始写CSS和确定需要另外的东西来实现相关效果的时候再加入它们。
使用CSS的向后选择器来定义子元素。不要直接自动的为元素添加类或id。请记住,如果一个文档没有良好的格式(结构),CSS是毫无价值的。