Div+CSS常见错误总结

2011-10-2作者 : Jimco分类 : HTML/CSS 标签: html CSS div

       CSS+DIV是网站标准(或称“WEB标准”)中常用的术语之一,通常为了说明与HTML网页设计语言中的表格(table)定位方式的区别,因为XHTML网站设计标准中,不再使用表格定位技术,而是采用css+div的方式实现各种定位。

       应用DIV+CSS编码时很容易犯一些错误。本文列举了一些常见的错误:

       1. 检查HTML元素是否有拼写错误、是否忘记结束标记

       即使是老手也经常会弄错div的嵌套关系。可以用dreamweaver的验证功能检查一下有无错误。

       2. 检查CSS是否正确

       检查一下有无拼写错误、是否忘记结尾的 } 等。可以利用CleanCSS来检查 CSS的拼写错误。CleanCSS本是为CSS减肥的工具,但也能检查出拼写错误。

       3. 确定错误发生的位置

       如果错误影响了整体布局,则可以逐个删除div块,直到删除某个div块后显示恢复正常,即可确定错误发生的位置。

       4. 利用border属性确定出错元素的布局特性

       使用float属性布局一不小心就会出错。这时为元素添加border属性确定元素边界,错误原因即水落石出。

       5. float元素的父元素不能指定clear属性

       MacIE下如果对float的元素的父元素使用clear属性,周围的float元素布局就会混乱。这是MacIE的著名的bug,倘若不知道就会走弯路。

       6. float元素务必指定width属性

       很多浏览器在显示未指定width的float元素时会有bug。所以不管float元素的内容如何,一定要为其指定width属性。

       另外指定元素时尽量使用em而不是px做单位。

       7. float元素不能指定margin和padding等属性

       IE在显示指定了margin和padding的float元素时有bug。因此不要对float元素指定margin和padding属性(可以在float元素内部嵌套一个div来设置margin和padding)。也可以使用hack方法为IE指定特别的值。

       8. float元素的宽度之和要小于100%

       如果float元素的宽度之和正好是100%,某些古老的浏览器将不能正常显示。因此请保证宽度之和小于99%。

       9. 是否重设了默认的样式?

       某些属性如margin、padding等,不同浏览器会有不同的解释。因此最好在开发前首先将全体的margin、padding设置为0、列表样式设置为none等。

       10. 是否忘记了写DTD?

       如果无论怎样调整不同浏览器显示结果还是不一样,那么可以检查一下页面开头是不是忘了写下面这行DTD: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

       其实,DIV+CSS在浏览器的兼容性和搜索引擎的优化方面,还是存在很多问题的。因此,CSS+DIV还有待于各个浏览器厂商的进一步支持。

569 人围观 / 13 条评论↓快速评论↓

  • 平日里,我不怎么用DW,但听同事说div+css还是挺难的。今天看了博主的文章,认识到了点东西,谢谢博主的哈!

    英语学习 2011-10-13 16:39 回复

    • @英语学习:阿狸2小广告~还是英语学习~~放过一回,下回坚决删删删!

      Jimco 2011-10-13 18:18 回复

  • 博主啊 上面的ccs是什么意思啊 能不能帮忙解释一下啊了

    保健品商城 2011-10-09 11:42 回复

    • @保健品商城:阿狸2都写这么清楚了,还问~赤果果的打广告来了~~

      Jimco 2011-10-09 13:54 回复

  • 呵呵 谢谢博主的分享我有学习到了新的知识 博主你辛苦了啊  希望博主你事事顺心
    阿狸24

    抢客网 2011-10-09 11:39 回复

    • @抢客网:阿狸1抢客也是本博的忠实广告户啊~

      Jimco 2011-10-09 13:55 回复

  • 技术博客,不错。。。。。。。。。。。

    京沪高铁 2011-10-08 20:21 回复

  • 我一般都是加背景颜色查看位置的。float的父级不能加clear,请问可不可以在父级的上面直接加一个空的<div style="clear:both;"></div>呢?

    一路上 2011-10-08 12:31 回复

    • @一路上:父级上面添加<div style="clear:both;"></div>是不是有点多余了?应该是在子元素的后面加吧~

      Jimco 2011-10-08 12:50 回复

    • @Jimco:噢。。。

      一路上 2011-10-08 12:51

  • 最近学了CSS,博主写的很有帮助啊。

    一路上 2011-10-08 12:27 回复

  • 文章很实用,学习收藏!另外博主主题很好看!

    宅男 2011-10-03 09:03 回复

我来说说:

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18

Powered by emlog

版权所有,保留一切权利! ©2011 前端那些事儿 Designed by Jimco About me | 意见反馈