  
- UID
- 1
- 帖子
- 738
- 精华
- 28
- 积分
- 14171
- 金币
- 2376
- 威望
- 1647
- 贡献
- 1324
|
在开始正式内容制作之前,我们必须先了解一下web标准有关代码的规范。了解这些规范可以帮助你少走弯路,尽快通过代码校验。
: L0 \* u' z% r, T9 d. F# J: b1.所有的标记都必须要有一个相应的结束标记' G- k2 L! W( j
以前在HTML中,你可以打开许多标签,例如<p>和<li>而不一定写对应的</p>和< /li>来关闭它们。但在XHTML中这是不合法的。XHTML要求有严谨的结构,所有标签必须关闭。如果是单独不成对的标签,在标签最后加一个 "/"来关闭它。例如:4 }: [2 [( y5 ]5 ]
<br /><img height="80" alt="网页设计师" src="../images/logo_w3cn_200x80.gif" width="200" /> ! r7 s; E; T7 a% ], j
2.所有标签的元素和属性的名字都必须使用小写# k1 N5 }( Z" M- ]7 ?" U. |
与HTML不一样,XHTML对大小写是敏感的,<title>和<TITLE>是不同的标签。XHTML要求所有的标签和属性的名字都必须使用小写。例如:<BODY>必须写成<body> 。大小写夹杂也是不被认可的,通常dreamweaver自动生成的属性名字"onMouseOver"也必须修改成"onmouseover"。3 E6 B+ V# M+ e
3.所有的XML标记都必须合理嵌套0 F7 r" X3 L! Q( l: f& ?1 `* [8 V
同样因为XHTML要求有严谨的结构,因此所有的嵌套都必须按顺序,以前我们这样写的代码:& H, `: [7 _! ]
<p><b></p>/b>
2 \% h: N4 z% o. i! W( v必须修改为:7 K# T/ C6 J; a1 P8 u
<p><b></b>/p>
' C8 {8 _; k0 D9 p1 u4 ]+ |. b6 l就是说,一层一层的嵌套必须是严格对称。* m0 G" l" E( \, u) ]
4.所有的属性必须用引号""括起来. J7 G( {9 y) v* X& |2 I. C: @( Q* {
在HTML中,你可以不需要给属性值加引号,但是在XHTML中,它们必须被加引号。例如:1 i8 i# a4 B" y4 @
<height=80>
3 a6 w5 `- o. X$ o# u" q必须修改为:" g8 l! |0 f, I k
<height="80"> , o' K0 |; `, n& R/ l* C
特殊情况,你需要在属性值里使用双引号,你可以用",单引号可以使用’,例如:' f0 [3 Z$ M$ c' o: i3 Y+ T
<alt="say’hello’">
6 K: S. v# d% f, \( I# Q2 E* g5.把所有<和&特殊符号用编码表示
5 ?4 d( c+ w" n, @任何小于号(<),不是标签的一部分,都必须被编码为& l t ; + S- i2 E* B' r/ R& m) p. K
任何大于号(>),不是标签的一部分,都必须被编码为& g t ;
2 R# O! G" o/ |! t3 y任何与号(&),不是实体的一部分的,都必须被编码为& a m p;
! M( I5 k% F5 n- [& f+ I注:以上字符之间无空格。" b( s: k; p# \+ A
6.给所有属性赋一个值+ `& C* X, R0 K% |
XHTML规定所有属性都必须有一个值,没有值的就重复本身。例如:
! H4 j1 _9 |, D6 ?1 ]: R) ^<td nowrap> <input type="checkbox" name="shirt" value="medium" checked>
+ O# t- d$ |! @- A0 u必须修改为:
5 a0 E/ c7 [5 P8 m. B# I<td nowrap="nowrap"> <input type="checkbox" name="shirt" value="medium" checked="checked"> % Z" _1 @$ S- M
7.不要在注释内容中使“--”
}- m9 q, O+ g, Z“--”只能发生在XHTML注释的开头和结束,也就是说,在内容中它们不再有效。例如下面的代码是无效的:
( ?0 u) Q/ C: Z4 x7 {8 V' w4 F* U<!--这里是注释-----------这里是注释-->
! w; a& y* [) h( d& t4 g- s2 J用等号或者空格替换内部的虚线。: w, `2 ^4 d! w9 E5 N0 f# f
<!--这里是注释============这里是注释--> / [0 f3 \; V% k' R7 j [
以上这些规范有的看上去比较奇怪,但这一切都是为了使我们的代码有一个统一、唯一的标准,便于以后的数据再利用。 |
|