如何让网站顺利通过W3C验证
1、官方的检查机制有些问题。背景色与字体色相同的情况下会有错误提示。这是不合理的检测报错机制。
2、图片的 alt="" 属性必须每张图片都加上,而且对齐属性用CSS来定义。不加不能通过XHTML 1.0的验证。
3、每个文档必须加上DTD声明。
<!DOCTYPE html PUBLIC "-//W3C//DTDXHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
去掉后能通过验证,但有警告:No DOCTYPE found! Checking with default XHTML 1.0 Transitional Document Type.
4、RSS的XML通过时其中的域名地址必须与检测的地址一致,否则会报错。
因为有两个域名在使用,所以代码中曾经用www.juoou.com,实际页面是http://www.juoou.com/,这样就出错了。
5、<a>标签的链接属性加上JAVASCRIPT事件时必须为#空链,不能为javascript:;或javascript:void(null);
6、在同一个页面当中,同名的ID会产生冲突。所以以ID定义样式的必须改成类引用。
<div id="a1">111</div>
<div id="a1">222</div>
如果不用W3C来检测的话,在CSS设计里是允许这样做的。
那是程序的角度不能相同,CSS上是可以相同的!
之前就是相同的产生问题,后面就改成类引用了!
7、不可省略双引号或单引号。
这个是指属性,标准是双引号~
单引号也能通过验证。
8、标签之间不可错位嵌套。
<div class="CaseDetaListSS">原文链接:<a href='/html/cases/cases_61.html'>798艺术区官方网站</div></a>
这是不允许的。
9、所有的标签都使用小写。
<div>ok
<DIV>NO,提示错误为:
Line 56, Column 16: there is no attribute "class"
<DIV class="CaseDetaListSS">原文链接:<a href='/html/cases/cases_61.html'>798艺术区
10、FLASH的标签代码中不能含有<embed>,必须采用其它的方法实现。
11、所有的标签中含有的属性必须有值(官方的说法)。
这里说的意思是,如果应用到某个属性,这个属性就比如赋予值,比如width="12",不能在标签中出现width=""
但是对于<img src="/UserFiles/cases/1225087801-jLThs.jpg" width="193" height="94" alt="" width=""/>一样能通过W3C的验证来说,又矛盾了。
12、标签必须配对完成,单标签必须以/关闭。
<br>no
<br />YES。并且<br/>也能通过,但不规范。
养成好的习惯吧,即使开始的时候有点难,还记得我们上小学的时候,都用田字格来写字,规范我们的习惯后,我们就可以离开田字格写出漂亮的文字了。
13、JS和CSS外部引入文件必须加上类型定义。
<script>CDFooter();</script> NO
<script type="text/javascript">CDFooter();</script> YES
我在做程序员的时候经常性的为了省事,写成:<script>CDFooter();</script> ,程序都没有任何问题,现在要我写规范,真不习惯。
14、所有的样式全部写在外部文件。用类名定义。在使用的地方引用。
这里说的是,最好这样做,大家看下面一段话:
<p>二、概念形成起源:<br />
从市场观察:DELL家用系列电脑市场中,以各类产品特色直接切入市场,少在品牌上单独着力。消费者对品牌的观感,多以听人怎么说、和网络上网友评价而来。<br />
从目标族群需求:若从口碑出发,此类意见领袖多为网络中重度以上用户,对网络的熟悉度高,我们规划并提供的内容,有两种最重要的切入点:娱乐性与功能性,至少需满足一项以上的需求,否则长期平台未来堪虑。<br />
从产品本身特性:DELL家用系列电脑其实是每一个前卫,时尚的家庭必备的时尚前卫元素。</p>
<img style="padding-right: 0px; padding-left: 0px; padding-bottom: 15px; padding-top: 15px" height="158" alt="" width="359" src="/images/dell4.jpg" />
<p>三、策略与创意概念:Open Up the Magic Box!<br />
突出DELL家用电脑系列,以个性、前卫、时尚的特色围绕展开,提供一个长期一年一节的交流园地,激发人的展现自我的欲望,利用互联网互 动交流的优势来吸 引用户关注到参与,想要找寻前卫、时尚的家庭,就得来DELL炫舞家庭园地!通过图画和文字描述手段,进行个性、前卫,时尚的家庭生活展示,包括推出时尚 家庭代言人顶帖炒作、DELL病毒传播、“DELL炫舞家庭代言人”主题活动、“DELL 我的兄弟姐妹” 主题贺卡传情活动。<br />
</p>
这是一篇文章的内容,我们很难判断每篇文章的内容要用什么样式,因为有时需要用到特别的样式,我们也不可能每次都对特别的样式进行一个样式 表的规范定义。估计W3C也考虑到了这一点,没有对这个问题做出严格的规定,但是我们尽量把通用的样式定义在外部文件中,这样便于维护。
15、页面上的一些特殊字符必须用HTML代码来标识.如“&”写成“&“ 。
这个是肯定的,毋庸置疑。
最后在这里推荐一下firefox上的firebug工具和web developer,它为通过页面验证提供了很多的帮助。