|
  
- UID
- 1
- 帖子
- 738
- 精华
- 28
- 积分
- 14433
- 金币
- 2502
- 威望
- 1647
- 贡献
- 1450
|
在开始正式内容制作之前,我们必须先了解一下web标准有关代码的规范。了解这些规范可以帮助你少走弯路,尽快通过代码校验。
2 L3 L5 g# J+ D H; n" t; y1.所有的标记都必须要有一个相应的结束标记! u; G' O) u3 H U& y9 J6 e
以前在HTML中,你可以打开许多标签,例如<p>和<li>而不一定写对应的</p>和< /li>来关闭它们。但在XHTML中这是不合法的。XHTML要求有严谨的结构,所有标签必须关闭。如果是单独不成对的标签,在标签最后加一个 "/"来关闭它。例如:
- p: X6 c1 k7 t E$ i<br /><img height="80" alt="网页设计师" src="../images/logo_w3cn_200x80.gif" width="200" /> ; h2 C. V; F I( I( z. s5 A
2.所有标签的元素和属性的名字都必须使用小写
! |+ ~# n3 ?" I3 b# \9 D# I与HTML不一样,XHTML对大小写是敏感的,<title>和<TITLE>是不同的标签。XHTML要求所有的标签和属性的名字都必须使用小写。例如:<BODY>必须写成<body> 。大小写夹杂也是不被认可的,通常dreamweaver自动生成的属性名字"onMouseOver"也必须修改成"onmouseover"。
6 `# X& t1 w% F& }: E- O5 Y3.所有的XML标记都必须合理嵌套: B9 a7 g/ D9 K+ m) j! m
同样因为XHTML要求有严谨的结构,因此所有的嵌套都必须按顺序,以前我们这样写的代码:
W3 d; \' O1 v4 _$ k<p><b></p>/b>
/ \ _2 i/ o$ o必须修改为:
0 @' {+ M/ u: V6 B! {! C7 q<p><b></b>/p> 4 B" t- o) u' c! l: p% y: J; p* U
就是说,一层一层的嵌套必须是严格对称。
/ I8 G# K- |2 v( C3 F9 I& W4.所有的属性必须用引号""括起来
9 [( ?; p3 o8 W, M: S在HTML中,你可以不需要给属性值加引号,但是在XHTML中,它们必须被加引号。例如:
7 \* N3 j Q* s6 |) p<height=80>
! K/ I; y/ c/ q必须修改为:
4 H+ [' W6 z+ i( x5 F<height="80"> ) ~! S/ w% o- v7 u2 J0 u
特殊情况,你需要在属性值里使用双引号,你可以用",单引号可以使用’,例如:! |/ V% V; i$ ]& m V- J
<alt="say’hello’">
; R( m9 I/ G; ?" F$ _, S/ B5.把所有<和&特殊符号用编码表示% X- G9 x$ B1 s% ]( M
任何小于号(<),不是标签的一部分,都必须被编码为& l t ;
: {* l! F& f- j. Z- L任何大于号(>),不是标签的一部分,都必须被编码为& g t ;
7 A7 `+ ]8 ?$ b- ]任何与号(&),不是实体的一部分的,都必须被编码为& a m p;
* x* M. U% F. D, ]/ {7 K. u注:以上字符之间无空格。
. w/ n/ P3 W- l- F; L- G: i; q6.给所有属性赋一个值- N8 r. E$ ]6 d9 X& f
XHTML规定所有属性都必须有一个值,没有值的就重复本身。例如:" b# i$ h& i) O8 z- P/ N6 y4 R
<td nowrap> <input type="checkbox" name="shirt" value="medium" checked> . e1 f: h0 r$ L
必须修改为:% K% S5 S0 L6 [4 k4 o' r
<td nowrap="nowrap"> <input type="checkbox" name="shirt" value="medium" checked="checked">
, }+ c% d; O, d6 O, w0 g7.不要在注释内容中使“--”
5 P. K' k1 b" q“--”只能发生在XHTML注释的开头和结束,也就是说,在内容中它们不再有效。例如下面的代码是无效的:- Q( J* \. ~9 `
<!--这里是注释-----------这里是注释--> / P& n7 G0 @$ }/ H; ?+ u% D
用等号或者空格替换内部的虚线。
# \9 S) ^9 i3 ^' v, k8 z<!--这里是注释============这里是注释--> 6 ^0 F. V5 F( ]3 D2 l) I2 M
以上这些规范有的看上去比较奇怪,但这一切都是为了使我们的代码有一个统一、唯一的标准,便于以后的数据再利用。 |
|