  
- UID
- 1
- 帖子
- 738
- 精华
- 28
- 积分
- 14249
- 金币
- 2415
- 威望
- 1647
- 贡献
- 1363
|
在开始正式内容制作之前,我们必须先了解一下web标准有关代码的规范。了解这些规范可以帮助你少走弯路,尽快通过代码校验。 ( C9 X" h5 y- L/ E0 a6 V
1.所有的标记都必须要有一个相应的结束标记
7 _; B, n. V' G' B# M H以前在HTML中,你可以打开许多标签,例如<p>和<li>而不一定写对应的</p>和< /li>来关闭它们。但在XHTML中这是不合法的。XHTML要求有严谨的结构,所有标签必须关闭。如果是单独不成对的标签,在标签最后加一个 "/"来关闭它。例如:* l5 X8 s! t4 B0 E U$ o
<br /><img height="80" alt="网页设计师" src="../images/logo_w3cn_200x80.gif" width="200" />
1 v; }9 s3 D( ^! h6 H3 P2.所有标签的元素和属性的名字都必须使用小写7 ] H' H& c8 ]. V9 Q3 P0 _" \
与HTML不一样,XHTML对大小写是敏感的,<title>和<TITLE>是不同的标签。XHTML要求所有的标签和属性的名字都必须使用小写。例如:<BODY>必须写成<body> 。大小写夹杂也是不被认可的,通常dreamweaver自动生成的属性名字"onMouseOver"也必须修改成"onmouseover"。
' j# z2 p4 X! x3.所有的XML标记都必须合理嵌套& l$ O8 x; S6 E8 t! Q
同样因为XHTML要求有严谨的结构,因此所有的嵌套都必须按顺序,以前我们这样写的代码: }# [" a k- e7 V! `
<p><b></p>/b> 3 P" y1 @6 y3 {6 k$ y! z1 `
必须修改为:
8 V1 n% f7 E' ^$ P<p><b></b>/p> 8 x& [* i6 r. A, e0 Q
就是说,一层一层的嵌套必须是严格对称。) i/ U) p. G, b! t2 d+ f8 u
4.所有的属性必须用引号""括起来
4 ^3 }9 H+ N6 V) _在HTML中,你可以不需要给属性值加引号,但是在XHTML中,它们必须被加引号。例如:0 b3 m/ R* f5 D7 X+ A Y
<height=80> , E6 ^* M7 J) f) ~# x
必须修改为:$ ~: q2 s; i$ _; |* Q# V6 o5 |- X$ _0 y
<height="80"> ) A1 F9 l0 q$ W3 V+ R( u
特殊情况,你需要在属性值里使用双引号,你可以用",单引号可以使用’,例如:
0 H. \- `- T; F/ F+ s<alt="say’hello’"> 8 N: N* I* X. R% @
5.把所有<和&特殊符号用编码表示3 f. j) ^- R q* y
任何小于号(<),不是标签的一部分,都必须被编码为& l t ; 9 a; I }+ t# ?) ~( I6 F6 e
任何大于号(>),不是标签的一部分,都必须被编码为& g t ; ( ~0 Z. |) K6 j+ q
任何与号(&),不是实体的一部分的,都必须被编码为& a m p; & y4 D7 |8 A: k1 A+ E# i# ]7 K
注:以上字符之间无空格。
" i' V) W! n+ i7 o. d) W6.给所有属性赋一个值
% s& L$ a. D6 zXHTML规定所有属性都必须有一个值,没有值的就重复本身。例如:
7 L0 c- i# [& Y: }+ r$ ]<td nowrap> <input type="checkbox" name="shirt" value="medium" checked> : E E! k9 ?# p1 _+ n& q
必须修改为:5 ^9 n# H) W& L9 K; N
<td nowrap="nowrap"> <input type="checkbox" name="shirt" value="medium" checked="checked"> / _' p/ h9 t# }$ d* h% T; C
7.不要在注释内容中使“--”
& E/ q* P9 E2 h* `1 u/ d. q“--”只能发生在XHTML注释的开头和结束,也就是说,在内容中它们不再有效。例如下面的代码是无效的:
2 R8 `4 q8 j% P- {/ u. f/ J9 m<!--这里是注释-----------这里是注释-->
; j0 L& r! m- I7 Y用等号或者空格替换内部的虚线。* I7 O; u" A7 C* B5 C* L
<!--这里是注释============这里是注释-->
0 `! M4 g( n) ^8 _1 m以上这些规范有的看上去比较奇怪,但这一切都是为了使我们的代码有一个统一、唯一的标准,便于以后的数据再利用。 |
|