前端编码规范之CSS
 / 

前端编码规范之CSS


前端编码规范之CSS


  "字是门面书是屋",我们不会去手写代码,但是敲出来的代码要好看、有条理,这还必须得有一点约束~

  团队开发中,每个人的编码风格都不尽相同,有时候可能存在很大的差异,为了便于压缩组件对代码进行压缩以及书写样式的规范统一和美观,很有必要大家一起来研究一套基本规范(模板)!

  我先抛砖引玉。(禁止)、(必须)等字眼,在这里只是表示强调,未严格要求



前端规范之CSS


1. tab键用(必须)四个空格代替

  因为在不同系统的编辑工具对tab解析不一样,windows下的tab键是占四个空格的位置,而在linux下会变成占八个空格的位置(除非你自己设定了tab键所占的位置长度)。

  一些童鞋可能会有疑问,tab键换成四个空格,多麻烦啊~

  其实不然,我平时用sublime text比较多,在这个工具中可以对tab键进行设置。

  选择Indent Using Spaces,Tab Width:4两项即可。


2. 每个样式属性后(必须)加 ";"

方便压缩工具"断句"。


3. Class命名中(禁止)出现大写字母,(必须)采用” - “对class中的字母分隔,如:

 /* 正确的写法 */
 .hotel-title {
     font-weight: bold;
 } /* 不推荐的写法 */
 .hotelTitle {
     font-weight: bold;
 }
  • 用"-"隔开比使用驼峰是更加清晰。

  • 产品线-产品-模块-子模块,命名的时候也可以使用这种方式


4. 空格的使用,以下规则(必须)执行:

 .hotel-content {
     font-weight: bold;
 }
  • 选择器与 之前必须)要有空格

  • 属性名的 必须)要有空格

  • 属性名的 禁止)加空格

一个原因是美观,其次IE 6存在一个bug, 另文:  "IE6的一个小bug"。


5.多选择器规则之间必须)换行

当样式针对多个选择器时每个选择器占一行

 /* 推荐的写法 */
 a.btn,
 input.btn,
 input[type="button"] {
     ...... }


6. 禁止)将样式写为单行, 如

.hotel-content {margin: 10px; background-color: #efefef;}

单行显示不好注释,不好备注,这应该是压缩工具的活儿~


7. 禁止)向 后添加单位, 如:

.obj {
    left: 0px;
}

只是为了统一。记住,绿色字表强调,不表强制!


8. 禁止)使用css原生import

使用css原生import有很多弊端,比如会增加请求数等....


9. 推荐)属性的书写顺序, 举个例子:

:;:;:;:;:;:;:;:;
  • 定位相关, 常见的有:

  • display position

  • left top float 等


  • 盒模型相关, 常见的有 :

  • width height margin

    padding border 等


  • 其他属性

    按照这样的顺序书写可见提升浏览器渲染dom的性能

  简单举个例子,网页中的图片,如果没有设置width和height,在图片载入之前,他所占的空间为0,但是当他加载完毕之后,那块为0的空间突然被撑开了,这样会导致,他下面的元素重新排列和渲染,造成重绘(repaint)和回流(reflow)。我们在写css的时候,把元素的定位放在前头,首先让浏览器知道该元素是在文本流内还是外,具体在页面的哪个部位,接着让浏览器知道他们的宽度和高度,border等这些占用空间的属性,其他的属性都是在这个固定的区域内渲染的,差不多就是这个意思吧~


浏览:20 0个赞
分享到

全部评论共0条 我要评论

课工场资讯
公告
活动
优惠
新闻资讯
新闻
资讯

学习利器

扫描二维码下载课工场客户端

申请线下课程免费试听