关于CSS网页布局id与class命名或许成为大家比较头疼的问题,在webjx.com中早已有相关的介绍,但还是不能满足大家对知识的渴求。
一、用class_name方式写类名。
以前喜欢用class-name写,不过好像两样也没什么差别。但我比较反对用className写类名,因为始终对浏览器大小写敏感的问题抱有怀疑态度。但是id我会写成驼峰式,理由见下一条。
二、样式都用class而不用id。
有三个理由。
1,id不可以重复,所以用class的话,可以肆无忌惮的用无数次。
2,id的优先级太高,若是写了一个#page_content a {color:#f60} ,那你完蛋了,里面要改链接颜色,都必须加上#page_content才能越过这个优先级。
3,id专门留给JS用,这样才符合表现与行为分离的原则。所以id我用驼峰式,也是为了体现这一点。
三、margin和padding,尽量省略最后一个值。
比如margin: 20px 10px 5px 10px; ,左右值是一样的,就应该省略掉最后一个值,写成margin: 20px 10px 5px; 这样到时候要改左右间距,改一个就好,免得改漏了。其实这个问题虽然很细小,但是可以看得出对margin四个值省略规则的熟练程度。
四、按标准写css,再针对特定浏览器作hack。
比如,通常我们会遇到如下的写法:
.side_col_webjx {
float:left;
display: inline;
margin-left: 20px;
}