[转]CSS编码规范

单行形式书写风格的排版约束

1.      每一条规则的大括号 { 前后加空格

2.      多个selector共用一个样式集,则多个selector必须写成多行形式

3.      每一条规则结束的大括号 } 前加空格

4.      属性名冒号之前不加空格,冒号之后加空格

5.      每一个属性值后必须添加分号; 并且分号后空格

例如:

div.test { width: 100px; height: 200px; }

a:focus,

a:hover { position: relative; right: 1px; }

多行形式书写风格的排版约束

1.      每一条规则的大括号 { 前添加空格

2.      多个selector共用一个样式集,则多个selector必须写成多行形式

3.      每一条规则结束的大括号 } 必须与规则选择器的第一个字符对齐

4.      属性名冒号之前不加空格,冒号之后加空格

5.      属性值之后添加分号;

其他规范

1.      使用单引号,不允许使用双引号

2.      如果使用CSS3的属性,如果有必要加入浏览器前缀,则按照webkit- / -moz- / -ms- / -o- / std的顺序进行添加,标准属性写在最后,并且属性名称要对齐,例如:

div.animation-demo {

-webkit-animation: mymove 5s infinite;

-moz-animation: mymove 5s infinite;

-o-animation: mymove 5s infinite;

animation: mymove 5s infinite;

}

命名规则书写规范

1、规则命名中,一律采用小写加中划线的方式,不允许使用大写字母或 _

2、命名避免使用中文拼音,应该采用更简明有语义的英文单词进行组合

3、命名注意缩写,但是不能盲目缩写,具体请参见常用的CSS命名规则

4、不允许通过1、2、3等序号进行命名

5、避免class与id重名

6、id用于标识模块或页面的某一个父容器区域,名称必须唯一,不要随意新建id

7、class用于标识某一个类型的对象,命名必须言简意赅。

8、尽可能提高代码模块的复用,样式尽量用组合的方式

9、规则名称中不应该包含颜色(red/blue)、定位(left/right)等与具体显示效果相关的信息。应该用意义命名,而不是样式显示结果命名。

10、除了重置浏览器默认样式外,禁止直接为html tag添加css样式设置,例如:

div {

width: 200px;

font-size: 16px;

}

11、每一条规则应该确保选择器唯一,禁止直接为全局.nav/.header/.body等类设置属性

属性编写顺序

推荐的样式编写顺序

1、显示属性

display/list-style/position/float/clear

2、自身属性(盒模型)

width/height/margin/padding/border

3、背景

background

4、行高

line-height

5、文本属性

color/font/text-decoration/text-align/

text-indent/vertical-align/white-space/content

6、其他

cursor/z-index/zoom

7、CSS3属性

transform/transition/animation/box-shadow/border-radius

8、链接的样式请严格按照如下顺序添加:

a:link -> a:visited -> a:hover -> a:active(LoVeHAte)

性能优化

1.      选择器应该在满足功能的基础上尽量简短,减少选择器嵌套,查询消耗。但是一定要避免覆盖全局样式设置。

2.      注意选择器的性能,不要使用低性能的选择器,例如:

div > * {}

ul > li > a {}

body.profile ul.tabs.nav li a {}

3.      禁止在css中使用*选择符

4.      除非必须,否则,一般有class或id的,不需要再写上元素对应的tag,例如:

div#test { width: 100px; }

5.      0后面不需要单位,比如0px可以省略成0,0.8px可以省略成.8px

6.      如果是16进制表示颜色,则颜色取值应该大写。

7.      如果可以,颜色尽量用三位字符表示,例如#AABBCC写成#ABC

8.      如果没有边框时,不要写成border:0,应该写成border:none

9.      尽量避免使用AlphaImageLoader

10.    在保持代码解耦的前提下,尽量合并重复的样式

11.    background、font等可以缩写的属性,尽量使用缩写形式

hack

IE6   * html selector { … }

IE7   *+html selector { … }

非IE6      html>body selector { … }

firefox     @-moz-document url-prefix() { … }

safari3+/chrome    @media screen and (-webkit-min-device-pixel-ratio:0) { … }

opera     @media all and (-webkit-min-device-pixel-ratio:10000), not all and (-webkit-min-device-pixel-ratio:0) { … }

iPhone/mobile webkit   @media screen and (max-device-width: 480px) { … }

z-index取值规范


头部导航区域


[1999 - 2100]


publisher所在的内容head区


[1998]


页面主要内容区域


[-1 - 1997]


页面底部


[1999 - 2100]


首页应用弹层


[1000]


全站公共组件


[-1 - 1999]


全页面蒙层弹窗组件


[10000-11000]

其他

1、字体名称请映射成对应的英文名,例如:黑体(SimHei) 宋体(SimSun) 微软雅黑 (Microsoft Yahei),如果字体名称中有空格,则必须加单引号。

2、背景图片请合理使用csssprites,按照模块、业务、页面来划分均可

3、css背景图片的文件类型,请按照以下原则来保存:

3.1 如果背景图片有动画,则保存成gif

3.2 如果没有动画,也没有半透明效果,则保存成png-8

3.3 如果有半透明效果,则保存成png-24

4、不要在html中加入标签来清理浮动,通过在浮动元素的父元素上添加.clearfix来清除浮动

5、为了SEO和页面可用性,请使用text-indent来隐藏文本内容。

6、制作css sprites时,尽量把颜色相近的图标放在一起,存储为png8格式,存储完以后还能用一些压缩工具进行无损压缩。

7、避免过小的背景图片平铺。

8、尽量少用!important

9、避免使用非一次性expression

时间: 2024-10-15 17:22:57

[转]CSS编码规范的相关文章

史上最精辟的html/css编码规范(转)

黄金定律 永远遵循同一套编码规范,不管有多少人共同参与同一项目,一定要确保每一行代码都像是同一个人编写的. HTML 语法 用两个空格来代替制表符(tab) -- 这是唯一能保证在所有环境下获得一致展现的方法. 嵌套元素应当缩进一次(即两个空格). 对于属性的定义,确保全部使用双引号,绝不要使用单引号. 不要在自闭和(self-closing)元素的尾部添加斜线 -- HTML5 规范中明确说明这是可选的. 不要省略可选的结束标签(closing tag)(例如,</li>或</body

HTML/CSS编码规范

HTML编码规范 code { font-family: "PT Mono", Menlo, "Courier New", monospace; padding: 2px 4px; font-size: 85%; color: #d44950; background-color: #f7f7f9; border-radius: .2rem; } .dec, .var {color: #606;} .pln {color: black;} .tag {color: #

web项目开发 之 前端规范 --- CSS编码规范

此文严格按照W3C规范和部分实际项目可读性,浏览器加载,性能等众多属性权衡,做出平时前端编码规范 文档.供广大web工作者参考并实施,对维护和项目扩展升级都能省时省力. 转载请注明出处:JS前端实用开发QQ群 :147250970  欢迎加入~! CSS编码规范 1 前言 2 代码风格 2.1 文件 2.2 缩进 2.3 空格 2.4 行长度 2.5 选择器 2.6 属性 3 通用 3.1 选择器 3.2 属性缩写 3.3 属性书写顺序 3.4 清除浮动 3.5 !important 3.6 z

前端(HTML/CSS/JS)-CSS编码规范

1. 文件名规范 文件名建议用小写字母加中横线的方式.为什么呢?因为这样可读性比较强,看起来比较清爽 https://stackoverflow.com/questions/25704650/disable-blue-highlight-when-touch-press-object-with-cursorpointer 那为什么变量名不用小写字母加小划线的方式 family_tree 因为下划线比较难敲(shift + -),所以一般用驼峰式命名变量的居多. 引入CSS文件的link可以不用带

【Bootstrap基础学习】04 Bootstrap的HTML和CSS编码规范

HTML 用两个空格来代替制表符(tab) -- 这是唯一能保证在所有环境下获得一致展现的方法. 嵌套元素应当缩进一次(即两个空格) 对于属性的定义,确保全部使用双引号,绝不要使用单引号. 不要在自闭合(self-closing)元素的尾部添加斜线 -- HTML5 规范中明确说明这是可选的. 不要省略可选的结束标签(closing tag)(例如,</li> 或 </body>). <html lang="zh-CN">强烈建议为 html 根元素

bootstrap css编码规范

1.1.  语法 1.        用两个空格来代替制表符(tab) -- 这是唯一能保证在所有环境下获得一致展现的方法. 2.        为选择器分组时,将单独的选择器单独放在一行. 3.        为了代码的易读性,在每个声明块的左花括号前添加一个空格. 4.        声明块的右花括号应当单独成行. 5.        每条声明语句的 : 后应该插入一个空格. 6.        为了获得更准确的错误报告,每条声明都应该独占一行. 7.        所有声明语句都应当以分号

css编码规范

https://segmentfault.com/a/1190000002460968 常用样式测试工具 W3C CSS validator:http://jigsaw.w3.org/css-validator/ CSS Lint:http://csslint.net/ CSS Usage:https://addons.mozilla.org/en-us/firefox/addon/css-usage/

css - 编码规范

属性顺序 1.定位.显示:position  top  float  clear  clip  z-index  display  visibility  list-style 2.盒模型:width  min-width  box-sizing  padding  margin  overflow 3.字体.文本:font  color  line-height  text-align  letter-spacing 4.装饰:border  outline  background  opac

HTML/CSS/JS编码规范

最近整理了一份HTML/CSS/JS编码规范,供大家参考.目录:一.HTML编码规范二.CSS编码规范三.JS编码规范 一.HTML编码规范 1. img标签要写alt属性 根据W3C标准,img标签要写alt属性,如果没有就写一个空的.但是一般要写一个有内容的,根据图片想要表达的意思,因为alt是在图片无法加载时显示的文字.如下不太好的写法: <img src="company-logo.svg" alt="ABC Company Logo"> 更好的