CSS命名规范

摘要:
1前端开发的命名规范1.1为什么我们应该为CSS命名规范开发一个统一的命名规范,以便于多人开发和维护期间的代码统一,降低项目通信和移交的成本,并增加代码的语义。例如,新闻列表、mod提要、mod my提要、cell title1.3Class和id的使用方法将id留给后台开发和JS。此外,页面的pageid和页面结构可以用id命名。什么是CSS命名空间?命名的范围由统一的命名约定定义,该约定成为CSSclass&id名称空间。

1 前端开发命名规范

1.1 为什么要制定CSS命名规范

统一的命名规范,便于多人开发维护时代码统一,减少项目沟通和交接的成本,增加代码的语义化。

1.2 CSS命名规则

  1. 样式类名全部用小写,首字符必须是字母,禁止数字或其他特殊字符。由以字母开头的小写字母(a-z)、数字(0-9)、中划线 (-)组成。

  2. 可以是单个单词,也可以是组合单词,要求能够描述清楚模块和元素的含义,使其具有语义化。避免使用 123456…,red,blue,left,right之类的(如颜色、字号大小等)矢量命名,如class="left-news"、class="2" ,以避免当状态改变时名称失去意义。尽量用单个单词简单描述class名称。

  3. 双单词或多单词组合方式:形容词-名词、命名空间-名次、命名空间-形容词-名词。例如:news-list、mod-feeds、mod-my-feeds、cell-title

1.3 Class 和 id的使用方法

把id留给后台开发和JS使用,除此之外页面的page id(如首页的外层需要一个ID id="pageIndex"),页面结构(header main footer)允许用id命名(ID命名建议使用驼峰命名)。其他禁止id使用在样式表CSS命名中,一律使用class命名。

1.4 命名空间

在编码思想上,我们可以将页面拆分成不同的层级(布局、模块、元件)。

什么是CSS命名空间?

通过统一的命名规范定义命名的范围,成为CSS class & id命名空间。

布局: 以语义化的单词layout作为命名空间,例如主栏布局命名 layout-main,只改变layout-命名空间后面的命名,layout始终保留。布局的命名空间为layout-xxx。

模块:页面是由一个或多个模块组成,模块的英文单词是module,规范简写成mod,如新闻模块mod-news,照片展示模块mod-photo-show。模块的命名空间为mod-xxx 。

元件:元件是属于模块内部的,也可以说模块是由元件和它内部的自有元素组成。如用户照片信息元件cell-user-photo。元件的命名空间为cell-xxx 。

1.5 通用命名

(1)页面框架命名,一般具有唯一性,推荐用ID命名

ID名称命名ID名称命名
头部header主体main
脚部footer容器wrapper
侧栏sideBar栏目column
布局layout  

(2)模块结构命名

Class名称命名Class名称命名
模块(如:新闻模块)mod (mod-news)标题栏title
内容content次级内容sub-content

(3)导航结构命名

Class名称命名Class名称命名
导航nav主导航main-nav
子导航sub-nav顶部导航top-nav
菜单menu子菜单sub-menu

(4)一般元素命名

Class名称命名Class名称命名
二级sub面包屑breadcrumb
标志logo广告bner(禁用banner或ad)
登陆login注册register/reg
搜索search加入join
状态status按钮btn
滚动scroll标签页tab
文章列表list短消息msg/message
当前的current提示小技巧tips
图标icon注释note
指南guide服务service
热点hot新闻news
下载download投票vote
合作伙伴partner友情链接link
版权copyright演示demo
下拉框select摘要summary
翻页pages主题风格themes
设置set成功suc
按钮btn文本txt
颜色color/c背景bg
边框border/bor居中center
top/tbottom/b
left/lright/r
添加add删除del
间隔sp段落p
弹出层pop公共global/gb
操作op密码pwd
透明tran信息info
重点hit预览pvw
单行输入框input首页index
日志blog相册photo
留言板guestbook用户user
确认confirm取消cancel
报错error  

(5)全局皮肤样式

文字颜色(命名空间text-xxx)

text-c1, text-c2,text-c3……

背景颜色(命名空间bg -xxx)

bg-c1,bg-c2,bg-c3……

边框颜色(命名空间border-xxx)

border-c1,border-c2,border-c3……

浮动

  右浮动 fr 左浮动 fl

免责声明:文章转载自《CSS命名规范》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇MySQL 存储过程 定时任务Sqlmap绕WAF学习下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

css 关于两栏布局,左边固定,右边自适应

好几个星期都没写博客了,最近不忙也不闲,稀里糊涂过了两个星期,之前几个月内天天坚持签到。最近也没签到。哈哈,说正事。 今天做东钿互金平台后台页面,昨天做了一个登录页面,业偶碰到了一个难题。等下也要把它写出来,先说今天的吧。两栏布局,左边固定,右边自适应 百度了一下,使用了http://www.zhangxinxu.com/wordpress/2010/03...

CSS 实现左侧固定,右侧自适应两栏布局的方法

"左边固定,右边自适应的两栏布局",其中有老生常谈的float方法,BFC方法,也有CSS3的flex布局与grid布局。并非所有的布局都会在开发中使用,但是其中也会涉及一些知识点。 常用的宽度自适应的方法通常是利用了block水平的元素宽度能随父容器调节的流动特性。另外一种思路是利用CSS中的calc()方法来动态设定宽度。还有一种思路是,利用CSS3中...

CSS3中的vh、vw及其应用场景

一、vh vw vw和vh是相对于视口(viewport)的宽度和高度。由于现在移动设备的屏幕尺寸之差别,如果仍然根据屏幕的物理分辨率来设计网页,效果很难统一,因此html5和css3引入视口的概念来代替显示器的物理尺寸。通过在meta标签上的设置,视口的长宽可以跟设备的物理分辨率相等,也可以不相等(以便手机上可以实现用两个手指来放大会缩小页面),可根据需...

分享一个博客园皮肤制作脚手架

前言 最近本着新年新气象的想法,想换套新的博客园皮肤。 之前自己做了一套制作皮肤的解决方案,这是当时分享皮肤以及解决方案的博客:分享一款博客园皮肤及其解决方案。 不过在制作新的皮肤过程中,使用这个解决方案时还是遇到了很多问题。 而为了更方便地制作新皮肤,就升级了原先的解决方案,搭建了这套博客园皮肤制作脚手架。 项目地址已从github换到了码云:https:...

!important覆写css行内样式

<div class="block"> <span style="font-weight: bold; color: red;">Hello World</span> </div> 众所周知,行内式最高级的, 如果我们要想使用导入式的来取代这个行内式的最高级,该如何写呢,用!important 如: .blo...

CSS3 制作一个边框向周围散开的按钮效果

分析 主要还是运用CSS3的transition, animation, transform还有渐变背景等特性。 由于按钮在鼠标进入时有不同的样式,所以要对其:hover状态运用另外的背景样式 通过对按钮的:after状态添加一个内容为空的元素,并给其一个边框,这样在鼠标进入后我们让这个隐藏的空元素变大直到淡出,就得到我们看到的效果了 构建基本按钮样...