一、div 标签未关闭
这是版面设计失效的最常见原因之一。当我们了解到这是多少精致的版块设计失效的罪魁祸首时,总会大吃一惊。开启的div标签是最普遍的版块设计失误之一,也是最难诊断的失误之一。验证程序有时会指向错误的开启div标签,诊断时就像大海捞针一样麻烦。
二、不当的DOCTYPE声明
不声明DOCTYPE,或者在文件开始错误声明DOCTYPE,也是一个常见错误。根据一般经验,Strict DOCTYPE是大家追求的最高级验证。Strict validation表明你的网页能够在所有浏览器上都得到最佳展示。
三、结尾斜线
如果你的网站不能验证,很有可能是在代码的某个地方漏写了结尾斜线。我们很容易忽略结尾斜线之类的东西,特别是在image标签等元素中。
在严格的DOCTYPE中这是无效的。要在img标签结尾处加上“/”以解决此问题。
四、JavaScript
如果已经声明Strict DOCTYPE,就需要在JavaScript中覆盖CDATA标签。验证程序的这一方面难倒了很多程序员,因为网站倾向于为广告和追踪脚本使用嵌入的 JavaScript。
五、不良嵌套
嵌套就是元素里又包括元素,我们容易混淆嵌套元素的顺序。例如在div标签前启动strong标签,但又先关闭div标签。这可能不会改变版块布局,但却会使你的版块设计失效。
如果仍无法发现,建议用“开发者模式”/“调试模式”(F12打开)查看对应元素继承了哪些属性,是不是其他的样式覆盖了自己设置的样式。
分析:这种情况可能是中文注释的原因,css并没有规定不允许中文注释,但是我也曾经遇到过这种问题,抱歉无法解析透彻。解决方法:备份后,一个一个删除中文注释。也许突然删除一条后你就发现成功了
补充:百度来的:
CSS 文件默认是 ANSI 编码,可能你会发现在一般情况下这样也是没有问题的,然而当 CSS 文件中包含有中文注释时就可能不尽如人意了!
保证应用程序中,HTML、JS、CSS等使用统一的编码。最好使用UTF-8