做网页时,常会因为不会命名和命名重复而造成好多不不必要的麻烦,正确的命名的确很重要,我这里也收集了一些命名规则,发上来大家共享下
CSS命名规则
头:header
内容:content/containe
尾:footer
导航:nav
侧栏:sidebar
栏目:column
页面外围控制整体布局宽度:wrapper
左右中:left right center
登录条:loginbar
标志:logo
广告:banner
页面主体:main
热点:hot
新闻:news
下载:download
子导航:subnav
菜单:menu
子菜单:submenu
搜索:search
友情链接:friendlink
页脚:footer
版权:copyright
滚动:scroll
内容:content
标签页:tab
文章列表:list
提示信息:msg
小技巧:tips
栏目标题:title
加入:joinus
指南:guild
服务:service
注册:regsiter
状态:status
投票:vote
合作伙伴:partner
XHTML文件中id的命名
(1)页面结构
容器: container
页头:header
内容:content/container
页面主体:main
页尾:footer
导航:nav
侧栏:sidebar
栏目:column
页面外围控制整体布局宽度:wrapper
左右中:left right center
(2)导航
导航:nav
主导航:mainbav
子导航:subnav
顶导航:topnav
边导航:sidebar
左导航:leftsidebar
右导航:rightsidebar
菜单:menu
子菜单:submenu
标题: title
摘要: summary
(3)功能
标志:logo
广告:banner
登陆:login
登录条:loginbar
注册:regsiter
搜索:search
功能区:shop
标题:title
加入:joinus
状态:status
按钮:btn
滚动:scroll
标签页:tab
文章列表:list
提示信息:msg
当前的: current
小技巧:tips
图标: icon
注释:note
指南:guild
服务:service
热点:hot
新闻:news
下载:download
投票:vote
合作伙伴:partner
友情链接:link
版权:copyright
1.CSS ID 的命名
外 套: wrap
主导航: mainnav
子导航: subnav
页 脚: footet
整个页面: content
页 眉: header
页 脚: footer
商 标: label
标 题: title
主导航: nav(mainnav/globalnav)
顶导航: topnav
边导航: sidebar
左导航: leftsidebar
右导航: rightsidebar
当前位置: loc
旗 志: logo
标 语: banner
菜单内容1: menu1 content
菜单容量: menu container
子菜单: submenu
边导航图标:sidebarIcon
注释: note
面包屑: breadcrumb(即页面所处位置导航提示)
容器: container
内容: content
搜索: search
登陆: Login
功能区: shop(如购物车,收银台)
当前的 current
网站公用相关
Container div #container 容器
Header or banner div #header 页头部分
Main or global navigation div #main-nav 主导航
Menu #menu 菜单
Sub Menu #submenu 子菜单
Left or right side columns #sidebar-a, #sidebar-b 左边栏或右边栏
Main div #main 页面主体
Content div #content 内容部分
The main content area #content-main 主要内容区域
Footer div #footer 页脚部分
Tag #tag 标签
Message #msg #message 提示信息
Tips #tips 小技巧
Vote #vote 投票
Friend Link #friendlink 友情连接
Title #title 标题
Summary #summary 摘要
Sub-navigation list #sub-nav 二级导航
Search input #search-input 搜索输入框
Search output #search-output 搜索输出和搜索结果相似
Search #search 搜索
Search results #search-results 搜索结果
Copyright information #copyright 版权信息
brand #branding 商标
branding-logo #branding-logo LOGO
Site information #siteinfo 网站信息
Copyright information etc. #siteinfo-legal 法律声明
Designer or other credits #siteinfo-credits 信誉
Join us #joinus 加入我们
Partnership opportunities #partner 合作伙伴
Services #service 服务
Regsiter #regsiter 注册
Status #status 状态
电子贸易相关
Products .products 产品
Products prices .products-prices 产品价格
Products description .products-description 产品描述
Products review .products-review 产品评论
Editor’s review .editor-review 编辑评论
New release .news-release 最新产品
Publisher .publisher 生产商
Screen shot .screenshot 缩略图
FAQ .faqs 常见问题
Keyword .keyword 关键词
Blog .blog 博客
Forum .forum 论坛
2.另外在编辑样式表时可用的注释可这样写:
<– Footer –>
内容区
<– End Footer –>
3.样式文件命名
主要的 master.css
布局,版面 layout.css
专栏 columns.css
文字 font.css
打印样式 print.css
主题 themes.css
要避免当状态改变时名称失去意义,最常见的就是用于布局的类名,如“left”、“right”,当左边栏不再是左边栏的时候,“left”这个名就没有实际意义了(可以看下《 CSS代码命名惯例语义化的方法 》中的“CSS类命名的语义化VS结构化方式”部分)。这与我们所推荐的“命名要有意义”就相违背了,使用序号就更加有问题了。好像没错,不过有好长一段 时间都有个问题让我很烦恼,如果一个页面中同个模块出现一次以上,而且细节还不一样,那后面出现的名称应该叫什么呢?难道“one”、“two”就不是序 号?其实我们要避免遇到的情况就是当状态(表现)改变时,对应定义的类名不会失去意义。
所谓的状态(表现)改变,有几种情况:
- HTML不变,样式定义改变。如果命名使用了表示某一状态的名称,如“red“、“font14“等,必定会引起定义与命名不符的情况,对后继的影响会造成比较大的影响。
- 样式定义不变,HTML改变。HTML改变意味着类名可更换,也就是如果类名使用了表示某一状态的名称,反而更有利于修改。
- 样式定义与HTML都改变。只需要考虑不要出现第一种情况的结果就可以了。
而实际情况并不是单纯的某一种情况,更多的时候是混杂着出现的。有点远了,回主题。
规则
[ 模块前缀 ] _ 类型 _ ( 作用 | 状态 ) n _ [ 位置 n ]
图例说明:
- ( 必选 ):必需存在。
- [ 可选 ]:可根据需要选择。
- |:多选一。
- n:可有多个。
名词说明:
- 模块前缀
- 模块定义时使用的前缀。
- 类型
- 定义类的内容类型。如输入框、文本、段落等等。
- 作用
- 定义类的作用,用于对类型的补充。
- 状态
- 定义类的状态,用于对类型的补充。
- 位置
- 定义类所使用的位置,如首页、导航等等,不排除使用左、右这样的词,但应尽量避免。
- 每项都可有自己的一个缩写表,同一名称的缩写尽量统一。
- 所选用的单词应选择不过于具体表示某一状态(如颜色、大小等)的单词,以避免当状态改变时名称失去意义。
- 由不以数字开头的小写字母(a-z)、数字(0-9)组成。
- 确保类(.class)的重用性与对象(#id)的唯一性,id避免使用保留字。
例:
模块前缀:
- 弹出 pop
- 公共 global,gb
- 标题 title,tit
- 提示 hint
- 菜单 menu
- 信息 info
- 预览 pvw
- Tips tips
- 导航 nav
类型:
- 按钮 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_tx | 段落文本颜色 | .tx_c_p |
| 密码输入框 | .input_pw | 相册弹出的设置层 | .pop_set_photo |
| 登录密码输入框 | .input_pw_login | 日志设置成功提示 | .hint_suc_blogset |
| 文本颜色 | .tx_c | 公共提示 | .hint_gb |
问几个简单的问题,可以帮助我们完成命名:
- “什么类型的定义?”——是个输入框,input。
- “类型补充说明”——如果一个词说明不清楚,那么补充说明类型,文本输入框,input_tx。
- “在哪使用?”——定义要使用的位置在哪?首页的搜索文本输入框,input_search_index。
可 能无法覆盖到所有的情况,但相信能解决70%~80%的命名问题。如果结合“模块化”相关的方法去定义,其实所需要定义的名称并不需要很多。 如:“hint_tx”表示提示模块的文字定义,“hit_tx_hint”表示提示里文字强调的定义,至于是改变颜色还是加粗,这个就看不同提示模块的 需要了。
近期评论