CSS样式命名规则

2016-02-20 00:14 3 1 收藏

下面图老师小编跟大家分享一个简单易学的CSS样式命名规则教程,get新技能是需要行动的,喜欢的朋友赶紧收藏起来学习下吧!

【 tulaoshi.com - Web开发 】

相信大家对样式命名都多少感到困难,特别是想起一个有意义的名,更难。回顾了一下之前写的《 样式命名规则 》(不知道大家使用后有什么感想)结合这段时间使用上发现的一些问题,重新整理了样式的命名规则,希望能更实用些。

要避免当状态改变时名称失去意义,最常见的就是用于布局的类名,如left、right,当左边栏不再是左边栏的时候,left这个名就没有实际意义了。这与我们所推荐的命名要有意义就相违背了,使用序号就更加有问题了。好像没错,不过有好长一段时间都有个问题让我很烦恼,如果一个页面中同个模块出现一次以上,而且细节还不一样,那后面出现的名称应该叫什么呢?难道one、two就不是序号?其实我们要避免遇到的情况就是当状态(表现)改变时,对应定义的类名不会失去意义。

所谓的状态(表现)改变,有几种情况:

HTML不变,样式定义改变。如果命名使用了表示某一状态的名称,如red、font14等,必定会引起定义与命名不符的情况,对后继的影响会造成比较大的影响。 样式定义不变,HTML改变。HTML改变意味着类名可更换,也就是如果类名使用了表示某一状态的名称,反而更有利于修改。 样式定义与HTML都改变。只需要考虑不要出现第一种情况的结果就可以了。

而实际情况并不是单纯的某一种情况,更多的时候是混杂着出现的。有点远了,回主题。

规则

[ 模块前缀 ] _ 类型 _ ( 作用 | 状态 ) n _ [ 位置 n ]

图例说明:

( 必选 ):必需存在。 [ 可选 ]:可根据需要选择。 |:多选一。 n:可有多个。

名词说明:

模块前缀 模块定义时使用的前缀。 类型 定义类的内容类型。如输入框、文本、段落等等。 作用 定义类的作用,用于对类型的补充。 状态 定义类的状态,用于对类型的补充。 位置 定义类所使用的位置,如首页、导航等等,不排除使用左、右这样的词,但应尽量避免。每项都可有自己的一个缩写表,同一名称的缩写尽量统一。 所选用的单词应选择不过于具体表示某一状态(如颜色、大小等)的单词,以避免当状态改变时名称失去意义。 由不以数字开头的小写字母(a-z)、数字(0-9)组成。 确保类(.class)的重用性与对象(#id)的唯一性,id避免使用保留字。

例:

模块前缀:

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)弹出 pop 公共 global,gb 标题 title,tit 提示 hint 菜单 menu 信息 info 预览 pvw Tips tips 导航 nav

类型:

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)按钮 bt 文本 tx 段落 p 图标 icon input input 颜色 color,c 背景 bg 边框 bor

作用:

设置 set 添加 add 删除 del 操作 op 密码 pw 导入 inc

状态:

成功 suc 失败 lost 透明 tran

位置:

公共 gb 边框 bor 段落 p 弹出 pop 标题 title,tit 菜单 menu 内容 cont 导航 nav 中文解释命名中文解释命名

问几个简单的问题,可以帮助我们完成命名:

什么类型的定义?是个输入框,input。 类型补充说明如果一个词说明不清楚,那么补充说明类型,文本输入框,input_tx。 在哪使用?定义要使用的位置在哪?首页的搜索文本输入框,input_search_index。

可能无法覆盖到所有的情况,但相信能解决70%~80%的命名问题。如果结合模块化相关的方法去定义,其实所需要定义的名称并不需要很多。如:hint_tx表示提示模块的文字定义,hit_tx_hint表示提示里文字强调的定义,至于是改变颜色还是加粗,这个就看不同提示模块的需要了。

来源:https://www.tulaoshi.com/n/20160220/1631512.html

延伸阅读
标签: Web开发
最近和一程序员合作项目。弄的我头都大了~埋怨我的CSS命名看不懂~得按照他的来。结果我打开他的页面,看了看,从头第一个开始就是contentCommon,下面全部是content****. 我说明了我的理由,过了半会,似乎是接受了,却突然来一句:“不要用H标签嘛!还有不要用UL来定义导航等“。对于很多合作过的程序员,大多都是这样,命名规范大多是自成一派。...
初学DELPHI的人,对自己随手编的程序,函数,过程所起的名字不会太在意。但可要注意,你随意起的名字,有时会给你带来意想不到的麻烦。举例如下:新建一个FORM,加上一个EDIT1,清除其内容,再加上一个LABEL1和BUTTON1。 BUTTON1按钮代码为 procedure TForm1.Button1Click(Sender: TObject); begin label1.caption:=i...
标签: SQLServer
在SQL SERVER中标识符共有两种类型:一种是规则标识符(Regular identifer),一种是界定标识符(Delimited identifer)。 其中,规则标识符严格遵守标识符的有关格式的规定,所以在Transact_SQL中凡是规则运算符都不必使用定界符。对于不符合标识符格式的标识符要使用界定符[]或‘ ’。 标识符格式: 1、标识符必须是统一...
标签: Web开发
在XHTML中定义ID、CLASSS都用得上,主要是方面CSS定义样式时能一眼看穿。所以,CSS命名仅作参考。 (1)页面结构类 容器: container 页头:header 内容:content/container 页面主体:main 页尾:footer 导航:nav 侧栏:sidebar 栏目:column 页面外围控制整体布局宽度:wrapper (2)导航类 导航:nav 主导航:mainnav 子导航:su...
标签: Web开发
以前我就是一篇博文 就给出一个好用的函数,它在我几篇博文中被广泛运用的。最近看了不少东西,于是便有了这篇博文,以梳理我学到的新东西。 毫无疑问,基于表现与结构相分离的原则,直接导入一个新的样式表是最好的选择,但有些情况就行不通,如我们做一个能拖动的DIV,从设置样式的角度看,就是把它绝对定位,以防影响原来的文档流,然后...

经验教程

882

收藏

58

精华推荐

CSS简写规则技巧

CSS简写规则技巧

说好的幸福呢

CSS语法缩写规则

CSS语法缩写规则

刘大小帅

Mysql入门系列:MySQL的命名规则

Mysql入门系列:MySQL的命名规则

爱哭的小屁孩ok

微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部