1、除选择DOCTYPE之外的语句必须使用小写英文字母书写。其中包括MacromediaDreamweaver生成的鼠标动作,如OnMouseOver也必须修改成onmouseover。
2、XHTML语法规要求所有的标识都必须有开始和结束。例如
和、和
等,对于不成对的标识,要求在标识最后加一个空格,然后跟一个"/"。例如写成
、写成,加空格的原因是避免代码连在一起浏览器不识别。
3、所有的XML标记都必须合理嵌套。如:
必须修改为:
,就是说,一层一层的嵌套必须是严格对称。
4、所有的属性必须用引号""括起来。如:
5、把所有<和&特殊符号用编码表示。如:任何小于号(<),不是标签的一部分,都必须被编码为<,任何大于号(>),不是标签的一部分,都必须被编码为>,任何与号(&),不是实体的一部分的,都必须被编码为&。(以上代码字母间无空格)
6、给所有属性赋一个值。如:
7、不要在注释内容中使用“--”。如:可以用等号或者空格替换内部的虚线。
首先是规范的文件头部分的写法:
CODE:
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
[Copytoclipboard]
在CSS的定义方面,值得推荐的是一种通用字体设置的方案,内容如下:
CODE:
body{font-family:"LucidaGrande",Verdana,Lucida,Arial,Helvetica,宋体,sans-serif;}
[Copytoclipboard]
字体按照所列出的顺序选用。如果用户的计算机含有LucidaGrande字体,文档将被指定为LucidaGrande。没有的话,就被指定为Verdana字体,如果也没有Verdana,就指定为Lucida字体,依此类推;
LucidaGrande字体适合MacOSX;
Verdana字体适合所有的Windows系统;
Lucida适合UNIX用户;
"宋体"适合中文简体用户;
如果所列出的字体都不能用,则默认的sans-serif字体能保证调用。
CSS中用四个伪类来定义链接的样式,分别是:a:link、a:visited、a:hover和a:active,例如:
a:link{font-weight:bold;text-decoration:none;color:#c00;}
a:visited{font-weight:bold;text-decoration:none;color:#c30;}
a:hover{font-weight:bold;text-decoration:underline;color:#f60;}
a:active{font-weight:bold;text-decoration:none;color:#F90;}
但是书写的时候一定要注意顺序,正确的顺序是:LVHA,如果不这么写的话,很可能效果很你预期的不一样。
中间部分的布局规格化和菜单的非表格实现需要实践的引导,在这里先不写什么。下面写一点关于代码校验的记录。
XHTML校验常见错误原因对照表:
NoDOCTYPEFound!FallingBacktoHTML4.01Transitional--未定义DOCTYPE。
NoCharacterEncodingFound!FallingbacktoUTF-8.--未定义语言编码。
endtagfor"img"omitted,butOMITTAGNOwasspecified--图片标签没有加"/"关闭。
anattributevaluespecificationmustbeanattributevalueliteralunlessSHORTTAGYESisspecified--属性值必须加引号。
element"DIV"undefined---DIV标签不能用大写,要改成小写div。
requiredattribute"alt"notspecified---图片需要加alt属性。
requiredattribute"type"notspecified---JS或者CSS调用的标签漏了type属性。
CSS2校验常见错误原因对照表:
(警告)无效数字:color909090不是一个color值:909090---十六进制颜色值必须加"#"号,即#909090
(警告)无效数字:margin-topUnknowndimension:6pixels---pixels不是一个单位值,正确写法6px
(警告)属性scroll_bar-face-color不存在:#eeeeee---定义滚动条颜色是非标准的属性
(警告)Line:0font-family:建议你指定一个种类族科作为最后的选择--W3C建议字体定义的时候,最后以一个类别的字体结束,例如"sans-serif",以保证在不同操作系统下,网页字体都能被显示
(警告)Line:0can'tfindthewarningmessageforotherprofile--表示在代码中有非标准属性或值,校验程序无法判断和提供相应的警告信息