一、关于选择器的命名
 
W3C CSS2.1的 4.1.3 节中提到:标识符(包括选择器中的元素名,类和ID)只能包含字符[a- zA-Z0-9]和ISO 10646字符编码U+00A1及以上,再加连字号(-)和下划线(_);它们不能以 数字,或一个连字号后跟数字为开头。它们还可以包含转义字符加任何ISO 10646字符作为一个数 字编码。
 
注:由于设计到的字符很多,本文只针对字符[a-zA-Z0-9],再加连字号(-)和下划线(_)进行讨论。 关于CSS中允许使用的字符和大小写信息,请参考W3C CSS2.1的4.1.3节
 
二、差异及可能产生的问题
 
在W3C CSS2.1说明文档中,只提到选择器标识符不能以数字,或一个连字号后跟数字为开头。除此之外,没有相关的说明。那么各浏览器下的表现是否遵循这一规则呢?
 
三、如何避免受此问题影响
 
坚持以字母开头命名选择器,这样可保证在所有浏览器下都能兼容。
 
四、关于团队合作的css命名规范
 
常用的css命名规则
 
头:header
 
内容:content/container
 
尾: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
 
(二)注释的写法:
 
/* Footer */
 
内容区
 
/* End Footer */
 
(三)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
 
(四)class的命名:
 
(1)颜色:使用颜色的名称或者16进制代码,如
 
.red { color: red; }
 
.f60 { color: #f60; }
 
.ff8600 { color: #ff8600; }
 
(2)字体大小,直接使用”font+字体大小”作为名称,如
 
.font12px { font-size: 12px; }
 
.font9pt {font-size: 9pt; }
 
(3)对齐样式,使用对齐目标的英文名称,如
 
.left { float:left; }
 
.bottom { float:bottom; }
 
(4)标题栏样式,使用”类别+功能”的方式命名,如
 
.barnews { }
 
.barproduct { }
 
 
 
注意事项::
 
1.一律小写;
 
2.尽量用英文;
 
3.不加中杠和下划线;
 
4.尽量不缩写,除非一看就明白的单词.
 
主要的 master.css
 
模块 module.css
 
基本共用 base.css
 
布局,版面 layout.css
 
主题 themes.css
 
专栏 columns.css
 
文字 font.css
 
表单 forms.css
 
补丁 mend.css
 
打印 print.css

HTML命名规范的更多相关文章

  1. JavaScript var关键字、变量的状态、异常处理、命名规范等介绍

    本篇主要介绍var关键字.变量的undefined和null状态.异常处理.命名规范. 目录 1. var 关键字:介绍var关键字的使用. 2. 变量的状态:介绍变量的未定义.已定义未赋值.已定义已 ...

  2. Java命名规范

    驼峰法则: 将所有字母都小写(包括缩写),然后将单词的第一个字母大写. 每个单词的第一个字母都大写,来得到大驼峰式命名. 除了第一个单词,每个单词的第一个字母都大写,来得到(小)驼峰式命名. 为避免歧 ...

  3. JavaScript知识点总结(命名规范,变量的作用域)

    命名规范 有人说JavaScript的宽容性是这个语言最糟糕的方面之一.比如说想把2个数字加在一起,JavaScript会把其中一个数字解析成字符串,那么就会得到一个奇怪的字符串,而不是2个数字的和. ...

  4. js的命名规范

                   js的命名规范   1.驼峰命名法:首字母是小写的,接下来的字母都以大写字符开头.例如: var testValue = 0; var oneValue = 10; 2. ...

  5. 浅谈Android编码规范及命名规范

    前言: 目前工作负责两个医疗APP项目的开发,同时使用LeanCloud进行云端配合开发,完全单挑. 现大框架已经完成,正在进行细节模块上的开发 抽空总结一下Android项目的开发规范:1.编码规范 ...

  6. [No000099]软件版本命名规范

    软件版本阶段说明 Base: 此版本表示该软件仅仅是一个假页面链接,通常包括所有的功能和页面布局,但是页面中的功能都没有做完整的实现,只是做为整体网站的一个基础架构. Alpha: 此版本表示该软件在 ...

  7. Google C++命名规范

    时间:2014.03.02 地点:基地 -------------------------------------------------------------------------------- ...

  8. javascript命名规范

    javascript命名规范 3.命名 命名的方法通常有以下几类: a).命名法说明 1).camel命名法,形如thisIsAnApple 2).pascal命名法,形如ThisIsAnApple ...

  9. Android 命名规范 (提高代码可以读性)

    android文件众多,根据名称来辨别用途很重要,因此命名要规范 这篇文章可参考:Android 命名规范 (提高代码可以读性) 刚接触android的时候,命名都是按照拼音来,所以有的时候想看懂命名 ...

  10. Android资源(图片)命名规范

    (转自:http://www.jb51.net/article/38796.htm) 图片命名注意: 1,不能以下划线("_")开头: 2,以数字加下划线("[0-9]_ ...

随机推荐

  1. C#实现录音录像录屏源码

    以前写过两篇录音和录像的文章(实现语音视频录制.在服务器端录制语音视频),最近有朋友问,如果要实现屏幕录制这样的功能,该怎么做了?实际上录屏的原理跟录音.录像是差不多的,如果了解了我前面两篇文章中介绍 ...

  2. three.js 微信小游戏

    最近在 https://classroom.udacity.com/courses/cs291 学习了一些 3D 引擎和 three.js 的知识 把 three.js 弄到微信小游戏里,先随便跑一跑 ...

  3. IDEA tomcat 热部署不生效的问题

  4. 在Java Web中使用Spark MLlib训练的模型

    PMML是一种通用的配置文件,只要遵循标准的配置文件,就可以在Spark中训练机器学习模型,然后再web接口端去使用.目前应用最广的就是基于Jpmml来加载模型在javaweb中应用,这样就可以实现跨 ...

  5. ELK实战(Springboot日志输出查找)

    需求 把分布式系统,集群日志集中处理快速查询 搭建ELK并与springboot日志输出结合 搭建ELK 基于我前面的elasticsearch搭建博客文档docker-compose.yml基础上进 ...

  6. rocketmq自启动配置

    捣鼓rocketmq自启动半天发现是启动脚本里没有声明java环境 现记录下 脚本 #!/bin/bash export JAVA_HOME=/opt/data/jdk1.8/jdk1.8.0_161 ...

  7. python之内置装饰器(property/staticmethod/classmethod)

    python内置了property.staticmethod.classmethod三个装饰器,有时候我们也会用到,这里简单说明下 1.property 作用:顾名思义把函数装饰成属性 一般我们调用类 ...

  8. Java高并发之设计模式

    本文主要讲解几种常见并行模式, 具体目录结构如下图. 单例 单例是最常见的一种设计模式, 一般用于全局对象管理, 比如xml配置读写之类的. 一般分为懒汉式, 饿汉式. 懒汉式: 方法上加synchr ...

  9. 归并排序——Merge Sort

    基本思想:参考 归并排序是建立在归并操作上的一种有效的排序算法.该算法是采用分治法的一个非常典型的应用.首先考虑下如何将2个有序数列合并.这个非常简单,只要从比较2个数列的第一个数,谁小就先取谁,取了 ...

  10. CentOS 部署 NodeBB

    0x00 前言 NodeBB 是基于 NodeJS 的开源 BBS 系统,可以搭配 redis 或 mongodb 数据库,本文中由于使用 NodeBB 配置中默认的 npm 安装会引起不知原因的 5 ...