本文章是一位webjx.com的网友在进行网站更新与调整时,进行W3C XHTML1.0验证的时候的一些经验。
总结出通过W3C XHTML1.0标准需要注意的九个问题:
一、在 div class=tzhI am TZH!/div 这段语句中有什么错误?
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/webkaifa/)标点符号问题。这其实也是大家最容易忽视的问题,其实就是小小的两个引号,就造成了这个错误。虽然很多浏览器在不加引号的情况下仍然能正确识别渲染。但是这样想要通过严格的W3C XHTML国际标准是不可能的,请大家记住等号后面一定要接引号。正确写法:div class="tzh"I am TZH!/div
二、在 SPAN class="tzh"TZH is me!/SPAN 这段语句中有什么错误?
大小写注意。这和第一个问题一样,都是特别容易忽视的细节问题。在W3C标准中是绝对不允许大写的,其中我仍记得我在检测一段javascript代码的时候,由于为了让自己一目了然写出的onLoad也被判断成了错误,原因就是L不能大写。正确写法:span class="tzh"TZH is me!/span
三、在 pI am TZH!/pbrpTZH is me!/p 这段语句中有什么错误?
br /标签问题。对于强制换行标签br /来说,很多新手都分不清它和br的区别,甚至在FCKeditor编辑器中有时都会时不时冒出个br来充当br /。虽然同样很多浏览器都能自动纠错,将br作为br /识别。但最好的编辑方法还是推荐大家使用Dreamweaver进行编辑,当你按下Ctrl+Enter,就会自动写上一个br /。正确写法: pI am TZH!/pbr /pTZH is me!/p
四、 h1~tangzhehao~hey~/h1 这段语句中有什么错误?
注意标签结束后面接的标点符号,很多标签结束后都不能接特殊标点符号,比如这里的"~"波浪号,但你要问,那叫我怎么用呢?那就使用ISO Latin-1字符集(ISO Latin-1 Character Set),在这里,查找到~波浪号相对应的字符集十进制编码是~,然后就用这个十进制编码代替~波浪号,记住最后的分号不能丢。在ISO Latin-1字符集中以已命名实体(Named entity)最优先,十进制编码(Decimal code)其次,也就是说,一个符号在同时有十进制编码和已命名实体的时候,优先选用已命名实体而不使用十进制编码。
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/webkaifa/)五、在 form id="54tzh"/form 这段语句中有什么错误?
注意id和class特殊情况。W3C XHTML1.0 标准中规定,在id或class中,第一个字符是不能是数字的,必须是字母。正确写法:form id="tzh45"/form
六、在 img src="Logo.gif" 这段语句中有什么错误?
img标签注意。W3C XHTML1.0 标准中规定,在img标签中,必须包括alt元素。正确写法:img alt="Logo" src="Logo.gif"
七、在script language="JavaScript" 这段语句中有什么错误?
script标签注意。W3C XHTML1.0 标准中规定,在img标签中,必须包括type元素。正确写法:script language="JavaScript" type=text/javascript
八、在divh1I am TZH!/div/h1 这段语句中有什么错误?
注意标签开始结束顺序对应。正确写法:divh1I am TZH!/h1/div
九、除了上面的之外,还需要注意哪些问题?
注意特殊套装。比如:dlddulli等一些特殊标签,套装顺序中缺一不可。必须按照顺序将dlddulli四个标签写完全。类似的还有许多。
注意未打开标签。所谓未打开来自于W3C检测,这类错误显示的错误是 is not open,翻译过来也就是未打开的意思。如果按照中文的意思来理解就是有首无尾或者有尾无首。通常这种错误出现的原因都是因为有一段代码在修改的时候被删除,而没有顾及到相对较远的结束或者开始标签。
总结出关于W3C CSS标准的一些经验:
一、少用偏门。类似break-word断行,z-index手动分层,还有像垂直对齐等等这些偏门CSS最好少用,因为不一定所有浏览器都支持,而且极难通过W3C检测。
二、center不是float的值。很多新手都会把center误认为是float的值,而偏偏不是如此。center只是text-align的值。
三、对齐不能包括两个值。很多新手会在float或者text-align中填写两个值,比如:float:left top。这是不允许的,浏览器也无法识别。
四、滚动条颜色最好不要自定义。很多浏览器不能正常识别自定义颜色的滚动条,况且很多自定义颜色都不能通过W3C。
五、单独滚动条设置。现在经常使用overflow-x(横向滚动条)或者overflow-y(纵向滚动条),在设置这个的时候经常会发现并不是所有的客户端上都有效果,大家在设置的时候最好在body和html同时进行设置。然而这个CSS也不是CSS2.1支持的(CSS2.1支持overflow,同时定义横纵滚动条),直到CSS3才支持这种定义方式。尽量少用。
六、background和color颜色相同会受到警告。关于更多的知识,您可以参考webjx.com的相关文章。