找回密码
 加入怎通
查看: 832|回复: 3

[站长八卦] Google推荐的15条军规:HTML5代码规范

[复制链接]
新工作 发表于 2012-07-05 14:00:31 | 显示全部楼层 |阅读模式
        今天无意间看到了Google的HTML/CSS编码规范,发现了不少自己很容易忽略的问题,特意仔细看了看,将其整理翻译出来分享给大家。Google规范的原文链接大家可以访问:http://google-styleguide.googlecode.com/svn/trunk/htmlcssguide.xml
( s  a. }- @- ?" H8 v& f        1.协议头:* f8 h9 u# q7 u0 ?. Y; {; p  N
        建议在指向图片或其他媒体文件、样式表和脚本的URL地址中省略http:https:协议部分,除非已知相应文件不能同时兼容2个协议。% M% y  l. j/ ~1 ^9 D
        
        注:这个倒是真正平日不注意的,只要是绝对地址,http:总是带着。如果仔细想一想,还真有道理。
# m( ^/ i2 q$ t, s, o# ?        2.缩进:每次缩进使用双空格
3 n) O6 }& w8 ~. T) i0 L6 `1 n        不要使用tab制表符或制表符加空格的混合方式缩进9 k9 C$ h2 M+ X+ {
        
        3.大小写:只使用小写3 ~/ u% ?" V) T) ?
        所有的代码都应是小写的,包括元素名称、属性,属性值(除非text或CDATA的内容)、选择器、css属性、属性值(字符串除外)# N( g! H' f2 ?" H$ Y( B
        
        4.尾随空格  z7 H; Y% p# ~  d% A
        尾随空格是不必要的,容易搞复杂diff文件。这个绝对是经验教训的总结!!!
4 f7 Q  T5 g5 }; K  @- C7 P/ S
        
        5.编码格式:使用UTF-8
  D; a" L2 y6 d: B3 d+ f- X        请确保您的编辑器使用的字符编码??为UTF-8,没有字节顺序标记。在html模板或文档中通过 <meta charset="utf-8″>来. ^1 F5 x" Z$ Z" m  S% L
        定义编码格式。关于编码格式参考 Character Sets & Encodings in XHTML, HTML and CSS# I1 F, x: a2 r
        6.注释
+ w* g5 p9 q6 p  V5 F2 Z8 h        根据需要解释代码,这个就不多说了,团队开发这个非常重要,尽管很多时候大家不愿意遵守,但确实重要!!!
( K' s; [2 C* @, {+ S) u7 E, K        7.TODO待定项& _2 n$ G! c% e* E
        尚未实现的或待定的内容一定要标识强调出来,利用TODO辨识,而非其他诸如@@来强调。$ P% @* B9 ?9 T5 o" n! l* E
        在todo项中如果有必要列明联系人,比如负责人
! }% H5 d1 d  H  x. ~$ [, t- c        在TODO后追加一个冒号作为行动内容,例如 TODO:为美瑞网增加html5模板$ T( ?( E- r  E! B
        8.文档类型:使用HTML5( [& V( Q" a/ P+ o! X# V' _
        使用<!DOCTYPE html>.HTML(text/html)类型文件相对XHTML(alication/xhtml+xml)文件,在浏览器及框架支持上和优化空间上都要好很多。% H2 l# @  Z8 X( r
        9.HTML 合法性验证
1 r) u, ]/ F7 B* i& j        合法的使用HTML,并利用w3c的工具(W3C HTML validator)进行检查。唯一例外就是因为性能原因需要压缩文件大小。
4 z- O* q) H: e        原文如下:Use valid HTML code unless that is not possible due to otherwise unattainable performance goals  regarding file size. 但这个确实很难想象,省略标签节省的文件大小能有多少字节?但带来的问题可是风险居高哦!
8 `# Y# l! W* x# |2 v
        
        10.语义性  g6 o/ t2 n% x( b
        根据目的来合理使用HTML,这点对于HTML5而言尤为重要。下面例子可以对比,能实现同样的结果,但效率和可读性却有很大差别。! ^. C  ?4 N- N
        
        对于HTML5而言,例如header、footer、nav、section等跟div能实现的功能基本类似,但是语义性上有着天壤之别。3 ?% E7 s0 U. C
        11.多媒体后备:为多媒体提供备选内容
& J$ ~% q) |. a2 B) O, q3 E        这个属于老生长谈的内容,典型就是为img添加alt内容。
) Y3 L1 m4 a4 @( E+ c0 T* U" v( J        12.关注点分离
& k( W: K- z7 t9 M& Z1 ^; @7 B2 h% B        这点很重要,严格遵守将组织结构(markup)、表现样式(style)和行为动作(script)分开处理的原则,并且尽量使三者之间的关联度 降到最小。这主要是基于维护性的考虑,通常,更新style文件或脚本文件比更改HTML文件的代价要小很多,试想一下,对于一个有超过10万页面的网站 进行局部颜色调整,是每个html文件修改容易还是修改一个style文件容易?" V$ \' I* Z" C
        可选Tags:省略可选的标签8 u7 M: Q! u! J* O
        
        13.实体引用- j& ]( X( l$ r+ ?& k' g
        假定开发团队内,文件和编辑器都是使用同样的编码格式(UTF-8),则没有必要使用实体引用的方式,例如&mdash;,&rdquo;, or &#9786; 除非一些HTML中具有特定含义的字符,如"<",或不可见字符如空格. e! a1 B% U5 f$ K0 U
        14.Type属性:省略
8 I7 V2 ~/ ~. i& ^        将样式表和脚本中的Type省略,除非你不是用的css或javascript,在HTML5中,该值默认是text/css和text/javascript
$ B: e0 V, e+ M  V* G# F
        
        15.block,list或table元素
* l4 N' |7 e9 q/ X        针对每个block,list或table元素另起一行,并在每个子元素前缩进。这样可读性好,例如:
  w1 D: F' }4 ^) e( K0 Z
        
        对于使用HTML5的朋友,可以参考。当然,不同团队还会整理出适合自己的代码规范,上述应该来说属于比较基本的规则内容。
7 v( }4 Y4 s% W$ _* Q* l7 i                (责任编辑:站长吧站长网http://htmlba.com/zixun/dongtai/2012/0705/684.html)
回复

使用道具 举报

大胡子 发表于 2026-01-05 21:19:28 | 显示全部楼层
分析得很透彻,很多细节都说到点子上了~
回复 支持 反对

使用道具 举报

ai1314 发表于 2026-01-13 15:43:23 | 显示全部楼层
刚好遇到类似问题,看完这个帖子心里有底了
回复 支持 反对

使用道具 举报

asd410881 发表于 2026-05-26 00:02:56 | 显示全部楼层
学习到了,之前一直没注意过这个点,受教了
回复 支持 反对

使用道具 举报

    您需要登录后才可以回帖 登录 | 加入怎通

    本版积分规则

    QQ|手机版|小黑屋|网站地图|真牛社区 ( 苏ICP备2023040716号-2 )

    GMT+8, 2026-6-16 15:20 , Processed in 0.210288 second(s), 52 queries , Gzip On.

    免责声明:本站信息来自互联网,本站不对其内容真实性负责,如有侵权等情况请联系420897364#qq.com(把#换成@)删除。

    Powered by Discuz! X3.5

    快速回复 返回顶部 返回列表