  
- UID
- 1
- 帖子
- 738
- 精华
- 28
- 积分
- 14171
- 金币
- 2376
- 威望
- 1647
- 贡献
- 1324
|
在开始正式内容制作之前,我们必须先了解一下web标准有关代码的规范。了解这些规范可以帮助你少走弯路,尽快通过代码校验。 0 g' P, i( G( O. o6 v1 Y4 W8 d
1.所有的标记都必须要有一个相应的结束标记* B4 G g/ o- D; R2 T
以前在HTML中,你可以打开许多标签,例如<p>和<li>而不一定写对应的</p>和< /li>来关闭它们。但在XHTML中这是不合法的。XHTML要求有严谨的结构,所有标签必须关闭。如果是单独不成对的标签,在标签最后加一个 "/"来关闭它。例如: S g+ X' A( Z% }% k2 \
<br /><img height="80" alt="网页设计师" src="../images/logo_w3cn_200x80.gif" width="200" />
! @9 G* {- n3 `% g& }$ q# M; J$ ^2.所有标签的元素和属性的名字都必须使用小写
9 j, t4 l V* s1 n5 L与HTML不一样,XHTML对大小写是敏感的,<title>和<TITLE>是不同的标签。XHTML要求所有的标签和属性的名字都必须使用小写。例如:<BODY>必须写成<body> 。大小写夹杂也是不被认可的,通常dreamweaver自动生成的属性名字"onMouseOver"也必须修改成"onmouseover"。- h# E2 U3 a% b6 g- l0 M P
3.所有的XML标记都必须合理嵌套
$ l- y Y" ]7 l& [# N+ K1 e' u- V同样因为XHTML要求有严谨的结构,因此所有的嵌套都必须按顺序,以前我们这样写的代码:& r9 g Q- |) ~" x7 z' e' |
<p><b></p>/b>
$ p0 K: K# x& j必须修改为:
; x. @' ~% X) V* ^+ ~6 g<p><b></b>/p> * C2 ^; ?9 Y6 ]
就是说,一层一层的嵌套必须是严格对称。: o# v I+ F7 r- J% C$ a( Q
4.所有的属性必须用引号""括起来
+ _: g5 v6 ]" o9 G( W在HTML中,你可以不需要给属性值加引号,但是在XHTML中,它们必须被加引号。例如:
7 o% F7 K! O0 l3 j- P<height=80> ' Z3 e2 R J6 x. E2 U
必须修改为:4 _! T7 S8 o' n3 a6 J5 F2 U4 G
<height="80"> 1 j0 L! h3 s7 s0 ~9 i7 c E
特殊情况,你需要在属性值里使用双引号,你可以用",单引号可以使用’,例如:
& P5 n! M p+ W: D; b: \, z3 E; x3 _<alt="say’hello’">
5 `7 I3 M. g3 q( X5.把所有<和&特殊符号用编码表示' X& {8 [( h U2 Y7 D% W
任何小于号(<),不是标签的一部分,都必须被编码为& l t ;
" v1 e4 j0 Z, `1 y: m3 B4 _任何大于号(>),不是标签的一部分,都必须被编码为& g t ;
; ?- u5 L7 I! P, C4 X+ K: B0 K( Y任何与号(&),不是实体的一部分的,都必须被编码为& a m p; , K( k; \& G2 e% ^; r
注:以上字符之间无空格。
( }( \) h0 D/ G# m- v9 S6.给所有属性赋一个值4 o; m( K& _" R+ z3 ]8 I
XHTML规定所有属性都必须有一个值,没有值的就重复本身。例如:' r$ j" v& ?. i) m+ k
<td nowrap> <input type="checkbox" name="shirt" value="medium" checked> ; }6 C* s3 |$ E) d* C3 w- |/ d% W
必须修改为:- f* x0 w; G. R9 S% N, \
<td nowrap="nowrap"> <input type="checkbox" name="shirt" value="medium" checked="checked"> / y3 E6 N6 J1 G6 A7 E& h8 `( [
7.不要在注释内容中使“--”9 c. c q- t$ p5 f3 W) L7 i" i6 f
“--”只能发生在XHTML注释的开头和结束,也就是说,在内容中它们不再有效。例如下面的代码是无效的:
) ]3 I3 J2 L: |, `: m<!--这里是注释-----------这里是注释--> - e! s( {' a' b/ i+ K+ t5 f' R7 _
用等号或者空格替换内部的虚线。* [6 o, y* C6 [7 Q- ~) _# m& H
<!--这里是注释============这里是注释--> , q0 K9 I/ M( k- v
以上这些规范有的看上去比较奇怪,但这一切都是为了使我们的代码有一个统一、唯一的标准,便于以后的数据再利用。 |
|