|
  
- UID
- 1
- 帖子
- 738
- 精华
- 28
- 积分
- 14443
- 金币
- 2507
- 威望
- 1647
- 贡献
- 1455
|
在开始正式内容制作之前,我们必须先了解一下web标准有关代码的规范。了解这些规范可以帮助你少走弯路,尽快通过代码校验。
8 g8 E+ J( e; Y1.所有的标记都必须要有一个相应的结束标记
* J2 M4 n3 d8 L* \3 `7 B2 b以前在HTML中,你可以打开许多标签,例如<p>和<li>而不一定写对应的</p>和< /li>来关闭它们。但在XHTML中这是不合法的。XHTML要求有严谨的结构,所有标签必须关闭。如果是单独不成对的标签,在标签最后加一个 "/"来关闭它。例如:4 k' y! {9 \+ p" T$ v9 |
<br /><img height="80" alt="网页设计师" src="../images/logo_w3cn_200x80.gif" width="200" /> : F9 K# F7 J0 I6 |3 T9 t
2.所有标签的元素和属性的名字都必须使用小写
+ K) Q( W* _% G; V# l与HTML不一样,XHTML对大小写是敏感的,<title>和<TITLE>是不同的标签。XHTML要求所有的标签和属性的名字都必须使用小写。例如:<BODY>必须写成<body> 。大小写夹杂也是不被认可的,通常dreamweaver自动生成的属性名字"onMouseOver"也必须修改成"onmouseover"。
+ v: l4 Q& L+ Q2 M' u2 Y: T* a ^3.所有的XML标记都必须合理嵌套; q/ b' C0 i1 {, t& C
同样因为XHTML要求有严谨的结构,因此所有的嵌套都必须按顺序,以前我们这样写的代码:
! i/ J- n: v& y2 R: h$ V<p><b></p>/b> * |1 y2 x7 z+ c& r
必须修改为: V/ ?# k' H2 ]$ Q
<p><b></b>/p>
1 l+ s6 o1 r/ l- O2 m( e就是说,一层一层的嵌套必须是严格对称。8 i$ w; J/ X$ p/ [" n
4.所有的属性必须用引号""括起来( N( N! c, c+ `/ `- [% |' @" U5 D( C
在HTML中,你可以不需要给属性值加引号,但是在XHTML中,它们必须被加引号。例如:
8 z& Q# e3 u/ a, A, r$ ~<height=80> 7 ?! F& a2 O. u3 k8 ~; n0 x. S
必须修改为:2 j9 W3 g" V: [( D2 v/ L4 O1 ^
<height="80"> ! J; Y, T8 r" e- T4 k4 o8 J3 ]
特殊情况,你需要在属性值里使用双引号,你可以用",单引号可以使用’,例如:/ c1 P" H B {1 ~. j0 \
<alt="say’hello’"> 0 r( @+ W% k, E% W: h+ Y9 a
5.把所有<和&特殊符号用编码表示
) u$ F: i9 q' z$ o任何小于号(<),不是标签的一部分,都必须被编码为& l t ; / I7 l9 h1 S2 j7 w
任何大于号(>),不是标签的一部分,都必须被编码为& g t ; % \8 F( E6 o$ _
任何与号(&),不是实体的一部分的,都必须被编码为& a m p; . \0 A. h) p, u4 Y W# l/ ~9 | c0 [
注:以上字符之间无空格。
4 g# {2 Z: s- e0 `( M* R6.给所有属性赋一个值9 C, b4 s& E: u
XHTML规定所有属性都必须有一个值,没有值的就重复本身。例如:
& @' {: ^( h4 B# j* r7 o; w0 f<td nowrap> <input type="checkbox" name="shirt" value="medium" checked> 0 x ^* i) ]2 W; T' r# Y
必须修改为:% T7 X" C" k1 K6 A! x
<td nowrap="nowrap"> <input type="checkbox" name="shirt" value="medium" checked="checked"> % C% l: O3 [1 V, t! i
7.不要在注释内容中使“--”0 q2 u6 V( J0 ^6 q
“--”只能发生在XHTML注释的开头和结束,也就是说,在内容中它们不再有效。例如下面的代码是无效的:3 ^" ?; R5 x. j2 }; T; {- h
<!--这里是注释-----------这里是注释--> * N6 H! ]5 W, z5 A* Z0 z
用等号或者空格替换内部的虚线。
& \$ ?0 N* j2 g( M; r# L<!--这里是注释============这里是注释-->
% W5 \+ v% b9 n9 Q0 Q0 N7 P; I以上这些规范有的看上去比较奇怪,但这一切都是为了使我们的代码有一个统一、唯一的标准,便于以后的数据再利用。 |
|