zoukankan      html  css  js  c++  java
  • html,css命名规范 (转)

    HTML+CSS命名规范总结

    1.HTML部分

    1.1添加必须的utf-8的字符集,并且使用HTML5的简洁

    方式:

       <meta charset=”utf-8”>

    1.2遵循xhtml1.0规则

       1)所有标签必须结束

       2)所有标签必须小写

       3)标签属性必须使用成对引号(单引号或双引号)

       4)标签属性必须有值:

       5)所有特殊符号必须转义

    1.3标签属性命名规范

       Id:连接符命名法“hello-world”

       Class:连接符命名法“hello-world”

       Name:骆驼式命名法“helloWorld”

    1)表单元素的id必须加以下前缀

       label: lbl    text:txt    password:txt   textarea:txt    file:txt

       radio: rad   checkbox:chk   submit:btn   reset:btn

       button:btn   hidden:      hid 

    2)用于结构布局的元素id命名

       主容器: main    页头:header   页脚:foote   内容区域:content

       LOGO:  logo    主导航:main-nav    二级导航:sub-nav

    3)name命名

       一般用于表单元素,根据当前元素id属性值命名,去掉id属性值的前缀和所有连接符,使用骆驼式命名法命名,例如:id=“txt-id-card”,那么name=“idCard”。

    1.4合理使用标签,语义化结构

    1)标签合理嵌套

       a ,spam ,strong ,em ,p ,h1-h6等元素不能包含:div、ul、ol、dl、p

    2)严禁多div症、多span症、多table症,正确使用标签表现DOM结构,在文档去除css的情况下,任然具有结构和可读性,以下是html标记的使用规范:

       p :文本段落        dl :定义列表,可包括标题和内容简介的列表

       ul :无序列表        ol :有序列表      strong/em :强调文本

       h1-h6 :文章标题、内容区块标题,根据重要性由大到小区分,h1一个页面只出现一次;

       img :图像。必须加上alt属性,当图像无法显示时,可表示图像信息,背景和按钮使用css处理,不使用img元素;

       table :数据网络,规则的分栏布局,尽可能显性的定宽和定高。

    3)合理化表单结构

       A)使用fieldset元素包裹相同类别的字段。

       B)使用legen元素表示      字段类别名称。

       C)使用label表示字段文本,添加必要的for属性,以在点击字段文本时,文本框能获得焦点。

       D)文本框不使用size属性定义宽度,而使用css的width属性。

       E)添加maxlength属性限制输入字符的长度。

    4)严禁使用已在xhtml1.0中已移除的标签

       s 、i 、b 、font

    1.5控制页面默认显示状态

       使用js来控制和切换现实的区块、导航、tab,必须先用css处理DOM默认显示状态。

    SEE MORE →

     

    2

    2.CSS部分

    2.1Css命名规则

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

    2)可以是单个单词,也可以是组合单词,要求能够描述清楚模块和元素的含义,使其具有语义化。避免使用123456...red,blue,left,right之类的(如颜色、字号大小等)矢量命名。

    3)尽量用单个单词简单描述class名称。

    4)双单词或多单词组合方式:形容词_名词、命名空间_名次、命名空间_形容词_名词。

    2.2Class和ID的使用方法

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

    2.3命名空间

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

    2.4添加文档样式

     1)引用外部文件方式添加样式

     2)严禁编写标记内代码,比如<div style=”display:none;”>就应该写成<div class=”hide”>,然后在样式表中去完成样式代码编写。

     3)严禁在文档中使用<style type=”text/css”></style>代码块

     4)分割样式表,降低代码复杂性,方便管理和维护。但不分割的太细碎,应考虑以后的维护和管理。

    2.5属性简写

       为了节省字节数及文件大小,以下属性请使用简写方式:

      padding :top right bottom left;      margin : top right bottom right;

      border : style width color;         border-top :style width color;

      Border-bottom :style width color;   Border-left :style width color;

      Border-color :top right bottom left;  Border-style :top right bottom left;

      Border-width :top right bottom left;  Background :color url(image)repeat posotion;

      List-style :type position url(image); Font-weight:400/700;

    2.6缩写16进制色值

    Color和background-color的属性值如果使用的是16进制色值,当6个数字两两相等时,使用缩写方式编写。如:#996600缩写成#960

    2.7字体

       1)全局定义字体:body{font:12px arial,helvetica,sans-serif;line-height:1.5;}

       2)font-family:

          A)等宽字体组合:Arial,Helvetica,sans-serif;

          B)不等宽(宽扁)字体组合:Verdana,Trebuchet MS,sans-serif;

          C)中文字体:除非内容文本需要,不推荐强制定义

    2.8页面采用固定流式布局,使用像素(px)固定元素尺寸。

    2.9添加必须的注释

       可根据全局、布局、区块、功能等进行分类和添加注释,方便维护和代码搜索。

    2.10CSS通用命名

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

    (2)模块结构命名

    (3)导航结构命名

    (4)一般元素命名

    SEE MORE →

     

    3

    3.图片命名

    1)背景图片:bg001,bg002,bg003......

     2)一般图片:img001,img002,img003......

     3)特定图片:如banner,logo按照具体情况命名

     4)按钮图片:btn_submit,btn_cancel.....

    SEE MORE →

     

    4

    4.javascript部分

    4.1在文档中引用js

       1)使用外部文件方式引用js;

       2)将引用js的代码集中放置在一起,可放置在</head>之前或</body>之前,严禁在body间分散放置;

       3)使DOM结构和js代码分离,禁止写在标记内部;

       4)如果是发布版本,请将多个稳定版本的js文件压缩、归类放置到单个文件内,压缩和最小化js文件。

    4.2不直接操作DOM样式,使用已在样式表中定义的class来操作DOM样式

    4.3DOM加载

      把需要再DOM加载后立即执行的代码封装在同一个函数执行,不要编写多个window.onload事件或jQuery的ready()事件。

    4.4严禁使用多个library库

    4.5优化iQuery代码,提高性能:

      1)选择器从最近的ID开始继承或直接使用ID选择器:$(“#id tag”);

      2)选择器在使用class前加上标签名:$(“span.span1”);

      3)尽量使用ID选择器代替class;

      4)要获取子元素请使用子选择器,而不要使用后代选择器:$(“#id>span”);

      5)缓冲jQuery对象,不要在代码中重复出现相同的选择器:var btn=$(“#id”);

      6)使用data()存储临时变量;

      7)限制直接操作DOM,在更新DOM前应该准备好需要的东西;

      8)避免使用live()方法绑定事件;

      9)在父级元素监听事件,对目标元素进行操作;

         $(“#id”).click(function(e){var input=$(e.target);});

      10)推迟加载拖放、动画、视觉特效等代码,把可能会影响页面加载速度的代码绑定到$(window).load()事件中

  • 相关阅读:
    Struts系列教材 (四)- 基础
    Struts系列教材 (三)- 基础
    Struts系列教材 (一)- 基础
    Hibernate系列教材 (三十)- 注解
    网络之AFNetworking
    iOS网络学习之“远离NSURLConnection 走进NSURLSession”
    ios中常见数据存储方式以及SQLite常用的语句
    利用"仿射变换"制作“酷炫特效”
    图片滚动新闻和新闻的滚动菜单
    简易聊天窗口
  • 原文地址:https://www.cnblogs.com/loushiqiang/p/6201483.html
Copyright © 2011-2022 走看看