|
  
- UID
- 1
- 帖子
- 738
- 精华
- 28
- 积分
- 14321
- 金币
- 2446
- 威望
- 1647
- 贡献
- 1394
|
在开始正式内容制作之前,我们必须先了解一下web标准有关代码的规范。了解这些规范可以帮助你少走弯路,尽快通过代码校验。
' ?# T c v; `- r3 |5 _1.所有的标记都必须要有一个相应的结束标记
4 N9 _. Z& P2 Y3 k D1 e以前在HTML中,你可以打开许多标签,例如<p>和<li>而不一定写对应的</p>和< /li>来关闭它们。但在XHTML中这是不合法的。XHTML要求有严谨的结构,所有标签必须关闭。如果是单独不成对的标签,在标签最后加一个 "/"来关闭它。例如:% F9 {0 ] S" v y* |" j
<br /><img height="80" alt="网页设计师" src="../images/logo_w3cn_200x80.gif" width="200" /> $ b- q5 l) o% \; i+ G4 T- z1 i' N5 p
2.所有标签的元素和属性的名字都必须使用小写
- Q$ v. H. `3 t, U& Q% m与HTML不一样,XHTML对大小写是敏感的,<title>和<TITLE>是不同的标签。XHTML要求所有的标签和属性的名字都必须使用小写。例如:<BODY>必须写成<body> 。大小写夹杂也是不被认可的,通常dreamweaver自动生成的属性名字"onMouseOver"也必须修改成"onmouseover"。* A* L- q/ V3 u. B( o
3.所有的XML标记都必须合理嵌套
) ^! e- `- p+ f: L同样因为XHTML要求有严谨的结构,因此所有的嵌套都必须按顺序,以前我们这样写的代码:
/ ]& y3 T0 w- f& s<p><b></p>/b>
2 q o: [. v# [# R* Y必须修改为:
$ d6 b/ F9 `2 v/ Y: a) Y+ d<p><b></b>/p>
# k Z. s" @; L( ^; ]% |就是说,一层一层的嵌套必须是严格对称。5 g; z- W" }0 ^8 m/ T2 K
4.所有的属性必须用引号""括起来
1 W) Y9 w' Z5 Y9 U* J9 S. H+ [在HTML中,你可以不需要给属性值加引号,但是在XHTML中,它们必须被加引号。例如:7 b4 W% S7 p- F; ?3 O( [
<height=80>
, w& J. r* m: Y1 S; ^必须修改为:
- k4 u& u) O. [0 m% i6 ~, C# [6 W<height="80">
8 O- @: I' k) I% d7 J' h0 @特殊情况,你需要在属性值里使用双引号,你可以用",单引号可以使用’,例如:8 K( R. a& L, i) ?0 ]* K S
<alt="say’hello’"> & f# S6 ?2 @, k: {, V! v, h4 V
5.把所有<和&特殊符号用编码表示
: F7 M) O& b# P$ p l3 T; j任何小于号(<),不是标签的一部分,都必须被编码为& l t ;
& P4 T n( A3 P任何大于号(>),不是标签的一部分,都必须被编码为& g t ;
6 \# g# U; _' m. ]" z5 h+ I任何与号(&),不是实体的一部分的,都必须被编码为& a m p;
# k& r6 S* z, f" s7 A注:以上字符之间无空格。
1 i4 z- R* j1 f: i6.给所有属性赋一个值
9 f3 i: |3 b5 p+ w% |XHTML规定所有属性都必须有一个值,没有值的就重复本身。例如:5 a! p% E" A) c! B7 c/ c
<td nowrap> <input type="checkbox" name="shirt" value="medium" checked>
. |! o+ z, d4 _$ e: T# H) t0 x0 K必须修改为:
& F3 P# F* x/ |$ g! x<td nowrap="nowrap"> <input type="checkbox" name="shirt" value="medium" checked="checked"> ( ^3 O4 S7 W2 [4 R# O
7.不要在注释内容中使“--”2 B. r1 T4 T! w: a
“--”只能发生在XHTML注释的开头和结束,也就是说,在内容中它们不再有效。例如下面的代码是无效的:
" h% i$ c# U6 g+ f. J7 |<!--这里是注释-----------这里是注释-->
4 m9 E) K+ e' R( m1 O2 Y用等号或者空格替换内部的虚线。' g# h4 I1 Z" S& n( w
<!--这里是注释============这里是注释--> % v# B8 m/ Y1 e6 s/ E/ Z% d6 j
以上这些规范有的看上去比较奇怪,但这一切都是为了使我们的代码有一个统一、唯一的标准,便于以后的数据再利用。 |
|