前言:最近在做微信小程序,因为公司小,就我一个人弄前端的东西,js和页面都是我来弄,结果那天后台的人看到我的js代码,说我的代码写得不规范,函数什么的都很乱,弄得我羞愧难当,幸亏没看我的css,其实我的css命名也很随意==!一直觉得自己css其实还是可以的,但是突然发现自己到现在的css还没有很规范,很多名称什么的还很随意,有的地方用驼峰命名,有的又用横杠,有的还会用下划线,真的太随意了,所以就上网搜了搜命名规范,改了两天终于把样式全改过来了。因此做个小结:

意义:感觉规范css代码是非常有意义的,早点有一套自己的规范的话在以后的编写css的时候就可以省去很多想应该怎么命名的时间,从长远的角度还是非常有好处的,其次别人看你的css时就可以一眼知道它代表的是什么意思,最后可以装b,哈哈。

规范:其实我是直接百度“css代码规范”,然后就搜到好多信息,看到知乎里人推荐网易1的一套前端规范,然后看了看确实不错,就以它为基础整理了自己的css编写规范。

  分类及命名:

  一、大体分下面几大类,分别以g-、m- 、u-、f-、s-、z-及自定义x-来命名第一个字母,表明 作用

  1. 布局(grid)(.g-):将页面分割为几个大块,通常有头部、主体、主栏、侧栏、尾部等!
  2. 模块(module)(.m-):通常是一个语义化的可以重复使用的较大的整体!比如导航、登录、注册、各种列表、评论、搜索等!
  3. 元件(unit)(.u-):通常是一个不可再分的较为小巧的个体,通常被重复用于各种模块中!比如按钮、输入框、loading、图标等!
  4. 功能(function)(.f-):为方便一些常用样式的使用,我们将这些使用率较高的样式剥离出来,按需使用,通常这些选择器具有固定样式表现,比如清除浮动等!不可滥用!
  5. 皮肤(skin)(.s-):如果你需要把皮肤型的样式抽离出来,通常为文字色、背景色(图)、边框色等,非换肤型网站通常只提取文字色!非换肤型网站不可滥用此类!
  6. 状态(.z-):为状态类样式加入前缀

    ps:为什么要用连字符还是有一些讨论的:CSS样式名中的下划线与连字符

  二、选择器属性和属性值一律用小写

  三、每个属性值后面都加分号结尾,即使是最后一个

  四、省略值为0时的单位 即:0px,0em,0% -> 0

  五、一律使用单引号

  六、使用16进制表示颜色(除了透明度用rgba)

  七、属性与值之间有一个半角空格的间距

  八、书写顺序2

    1.  位置属性(position, top, right, z-index, display, float等)
    2.  大小(width, height, padding, margin)
    3.  文字系列(font, line-height, letter-spacing, color- text-align等)
    4.  背景(background, border等)
    5.  其他(animation, transition等)

    ps:其实这里面的height和line-heightde位置我是很纠结的,因为其实很多时候我都是直接省略height直接用line-height来撑起来的高度,自己实际上还是没太搞懂line-height 这个属性,需要注意去研究一下!!

  九、其他:

    一般写css的时候都需要重置一些浏览器默认的css,这里有个优化阅读体验的文章,还可以,里面的把#000纯黑的颜色改成#333这个小技巧很多网站都在用,自己也没在意,因此特地记一下。

缩略词:其实我在改写我的那些css的时候很多时候我都在思考应该怎么缩写那些单词,虽然网易前端规范也写了一些缩略,但是挺少的,正好找了一篇文章,可以在这里查查,实在找不到就百度去吧。常用缩略词:http://blog.csdn.net/yfh1985sdq/article/details/17260429

参考地址:

1 网易前端规范:http://www.shejidaren.com/css-written-specifications.html

2 css书写顺序讨论:http://www.cnblogs.com/wybie/p/3689867.html

3 css编写规范,有例子,界面也很好看,我大体就是参考这个网站个网易前端规范来的:http://nec.netease.com/standard/css-practice.html

最后,写博客也是挺累的,,,真的很佩服网上那些大神,既能写的那么精简,又能幽默风趣,真的让人羡慕呀,没错,我说的就是张鑫旭张大神,任重而道远啊~

个人css编写规范的更多相关文章

  1. HTML+CSS编写规范

    在任何一个项目或者系统开发之前都需要定制一个开发约定和规则,这样有利于项目的整体风格统一.代码维护和扩展.由于Web项目开发的分散性.独立性.整合的交互性等,所以定制一套完整的约定和规则显得尤为重要. ...

  2. css编写规范最佳实践

    最初,在编写CSS的时候,我们往往想到哪儿就写到哪儿,它们之间的关联性和有序性并不在考虑之中.但随着代码量的增加,亦或是多人共同开发,CSS的编写规范变得重要起来了.本文通过三个方面,总结出CSS编写 ...

  3. css编写规范

    一.注释规范 1.文件顶部注释(推荐使用) /* * @description: 中文说明 * @author: name * @update: name (2013-04-13 18:32) */ ...

  4. html css 编写规范

    html 规范 一 语法 1.用两个空格带她tab, 2.嵌套的元素应该缩进一次,即两个空格是最好 3.属性定义,全部使用双引号,尽量避免单引号. 4.不要在自闭和标签尾部添加闭合标签. 5.可选得结 ...

  5. 关于HTML与CSS编写规范

    之前一直没有注意到这一点,因为当看到一些优秀的网站的源代码的时候,打开他们引用的css文件格式看起来也并非规范.但幸运的昨天偶然间看到的通过增强CSS规范可读性可优化页面性能,于是下决心痛改前非. 我 ...

  6. 高质量CSS编写规范

    ①id和class的命名在保持语义性的同时尽可能的短.不推荐的写法:#navigation {} .atr {}推荐的写法  : #nav {} .author {}可以缩写单词,但缩写后务必能让人明 ...

  7. web(五)CSS引入方式,编写规范及调试

    CSS (Cascading Style Sheets)层叠样式表 ,是由万维网联盟(W3C)制定的标准 CSS的主要作用: 美化html元素的外观,例如设定背景颜色.字体等. 对网页元素进行布局.以 ...

  8. CSS编写指导规范和建议

    在参与规模庞大.历时漫长且参与人数众多的项目时,所有开发者遵守如下规则极为重要: 保持 CSS 易于维护 保持代码清晰易懂 保持 CSS 的可拓展性 为了实现这一目标,我们要采用诸多方法. 本文档第一 ...

  9. CSS的编写规范

    一.前言 如上图,页面在渲染和画图时,耗时还是比较多的,这就对我们的编写要求愈加严格. 我们有很多方法来减少上图所示的页面加载耗时的,比如 但是更多的还是在于平时的编写规范,我们需要了解浏览器,让他更 ...

随机推荐

  1. MySQL学习(一) SQL基本操作

    SQL的基本操作无非就是增删改查(CRUD),根据对操作的对象分类,又可以分为三类,库操作,表操作与数据操作. 库操作 新增数据库 CREATE DATABASE [IF NOT EXISTS] db ...

  2. 【Java深入研究】2、JDK 1.8 LinkedList源码解析

    LinkedList是一个实现了List接口和Deque接口的双端链表. 有关索引的操作可能从链表头开始遍历到链表尾部,也可能从尾部遍历到链表头部,这取决于看索引更靠近哪一端. LinkedList不 ...

  3. 【Java并发编程】6、volatile关键字解析&内存模型&并发编程中三概念

    volatile这个关键字可能很多朋友都听说过,或许也都用过.在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果.在Java 5之后,volatile关键字才得以 ...

  4. power of the test

    https://www.youtube.com/watch?v=UApFKiK4Hi8

  5. HDU3567

    Eight II Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 130000/65536 K (Java/Others)Total S ...

  6. csharp: mappings using Dapper-Extensions+Dapper.net.

    sql: CREATE TABLE [PotoUsers] ( [UserID] INT IDENTITY(1,1) PRIMARY KEY, [UserName] NVARCHAR(50), [Fi ...

  7. cf1130E. Wrong Answer(构造)

    题意 题目链接 Sol 对构造一无所知... 题解的方法比较神仙,,设第一个位置为\(-1\),\(S = \sum_{i=1}^n a_i\) 那么我们要让\(N * S - (N - 1) * ( ...

  8. BZOJ4259: 残缺的字符串(FFT 字符串匹配)

    题意 题目链接 Sol 知道FFT能做字符串匹配的话这就是个裸题了吧.. 考虑把B翻转过来,如果\(\sum_{k = 0}^M (B_{i - k} - A_k)^2 * B_{i-k}*A_k = ...

  9. 常见编码GBK、GB2312、UTF-8、ISO-8859-1的区别

    https://blog.csdn.net/shijing_0214/article/details/50908144 在项目开发中,会经常遇到不同的编码方式.不管什么编码,都是信息在计算机中的一种表 ...

  10. 使用spark DStream的foreachRDD时要注意哪些坑?

    答案: 两个坑, 性能坑和线程坑 DStream是抽象类,它把连续的数据流拆成很多的小RDD数据块, 这叫做“微批次”, spark的流式处理, 都是“微批次处理”. DStream内部实现上有批次处 ...