zoukankan      html  css  js  c++  java
  • HTML代码编写规范和建议

    基本原则:内容(DOM)、样式(CSS)、行为(JS)代码分离。

    使用HTML5的DOCTYPE声明

    <!DOCTYPE html> ,目前IE6,IE7还不认识,所以会以标准模式渲染页面。但是在其他浏览器下,在图文混排时图片下方会出现间隔空隙。 解决办法:

    img {
        vertical-align: bottom;
    }

    页面显示字符集

    使用HTML5的简写方式: <meta charset="utf-8" />

    遵循xhtml 1.0规则

    这里只是为了编写HTML代码时,统一规范而已,在HTML5中已经不需要这样严格了,但是我们还是要规范下比较好。

    • 所有标签必须结束;
    • 所有标签必须小写;
    • 标签属性都必须用引号引起来(单引号或双引号);
    • 标签属性必须有值:   
    <select>
        <option selected="selected"></option>
    </select>
    <input type="checkbox" checked="checked" />
    • 所有特殊符号必须转义。

    合理使用标签

    • 标签合理嵌套:a、span、strong、em、p、h1~h6等元素不能包含:div、ul、ol、dl、p;
    • 严禁多div症、多span症、多table症,正确使用标签表示DOM结构,在文档没有css的条件下,任然具有结构和可读性:
      • h1~h6:文章标题、内容区块标题
      • p:文本段落
      • strong/em:强调文本
      • dl:包括标题和内容简介的区块
      • ul:无序列表
      • ol:有序列表
      • img:图像,必须加上alt属性来表示图像代替文本,背景和按钮不要使用该标签,请使用css处理。
      • table:数据网格,规则的分栏布局,必须显性定宽和定高
      • 表单结构
        • 使用fieldset做字段分类;
        • 使用legend表示分类标题;
        • 使用label表示字段文本,添加必要的for属性。
    • 严禁使用已在xhtml 1.0中移除的用于表示样式的标签:s、i、b、font

    规范命名

    • id: 连接符命名法“hello-world”
    • class: 连接符命名法“hello-world”
    • name: 骆驼式命名法“helloWorld”
          
    表单元素的id以如下前缀命名
    元素类型前缀缩写
    label lbl
    text txt
    password txt
    textarea txt
    file txt
    radio rad
    checkbox chk
    submit btn
    reset btn
    button btn
    hidden hid
    结构布局的元素id命名
    模块类型ID名称
    主容器 main
    页头 header
    页脚 footer
    内容区域 content
    主导航 main-nav
    二级导航 sub-nav
    LOGO logo

    结构内部子元素id命名:父元素id的头字母 + 第几个子元素编号(从1开始) + (可选)当前元素在父容器中的显示位置(上/右/下/左)“t/r/b/l” + (可选)当前元素在父容器中为第几个子元素(从1开始),比如,内容区域id=”content”的子元素:c-1,c-2,c-3,c-4-t,c-4-r-1,c-4-b-2,c-4-l-3...

    class命名:按功能命名,用连接符分割单词,单词要有语义,可以自解释,不要使用缩写,除非一看就能理解。

    name命名:表单元素name名称为去掉该元素id的前缀,然后用id后面的单词,去掉分割符,使用骆骆式命名链接各单词,比如id=”txt-id-card”,那么name=”idCard”。

  • 相关阅读:
    Git常用命令
    C++ 四种强制类型转换
    Linux系统日志及日志分析
    C/C++中的getline函数总结:
    标准C++中的string类的用法总结
    C++中map的基本操作和使用;
    一个C++类的注释:
    C++ 中宏的使用 --来自:http://blog.csdn.net/hgl868/article/details/7058906
    c++ 的vector
    c++强制类型转换:dynamic_cast、const_cast 、static_cast、reinterpret_cast
  • 原文地址:https://www.cnblogs.com/nicolaszhao/p/1712796.html
Copyright © 2011-2022 走看看