css 浮动后的元素不论是什么display的都默认是block就是设置inline也是block

IE/6出现双边框的原因

出现双边距的条件是当浮动元素的浮动方向和margin的方向一致时才会出现。也就是说,并不是只有块状元素左浮动,且具有左外边距时才有这个BUG,当一个盒子右浮动的同时有一个向右的margin-right的时候,IE6也会把margin-right解析为原来的2倍。当有多个同行元素都浮动了,而且都有同方向的margin,则只有最靠近浮动方向的元素有双边距bug。(如果都是一个方向的浮动那么第一个只有双边距,但同时也有右边的浮动,那么也同样是双边距,原理是相对谁浮动的)

解决这个bug有两个方法:

  1. 给float的元素添加一个display:inline (错误!!!) 其实不用加,浮动的元素本身会变成block元素,加了也不会生效
  2. 给ie6写一个hack,其值是正常值的一半,即_margin-right:10px;这个方法不推荐,因为要加hack写法,而这个是要尽量避免写的。但是这个正好能够说明这个bug的真实存在。

本来以为,将display设置为inline后,就改变了BUG产生的条件之一,即必须是块状元素。但是后来又看到了下面这段话:“熟悉规则的人知道浮动元素自动设置为”block”元素,而不管他们之前是什么。这说明浮动元素上的{display: inline;}会被忽略,事实上所有的浏览器没有呈现任何改变,包括IE。但是,它不知何故让IE停止将浮动元素的边界翻倍。”

参考博客

最新文章

  1. 打电话,发短信,发邮件,app跳转
  2. Dapper学习笔记(3)-增、删、改、查
  3. [NOIP2010初赛]烽火传递+单调队列详细整理
  4. AR
  5. 【jQuery】关于选择器中的 :first 、 :first-child 、 :first-of-type
  6. MFC创建非模态对话框并修改CStatic文字
  7. 【JavaScript学习笔记】调用google搜索
  8. mysql中 group_concat长度限制
  9. 添加MIME类型
  10. [Medusa-dev] psp_handler - embed python in HTML like ASP
  11. Unity 3D Framework Designing(1)—— MVVM 模式的设计和实施(Part 1)
  12. 老李分享:robotium3.6与4.0 later 的区别 1
  13. tomca配置文件自动还原问题的解决 server.xml content.xml 等
  14. python基础3、4---流程控制、运算符
  15. mysql索引及优化
  16. 计算机信息类ComputerInfo(车)
  17. Graphviz安装及简单使用
  18. ASP.Net MVC(1) 之走进MVC
  19. 转:检查c#代码内存泄露工具-CLR Profiler工具使用
  20. Android: TextView 及其子类通过代码和 XML 设置字体大小的存在差异的分析

热门文章

  1. Spring《六》管理Bean
  2. Java基础——StringBuffer和StringBuilder
  3. Java NIO(六)选择器
  4. Android 自定义ScrollView的滑动监听事件
  5. Photoshop保存文件时的选项
  6. mvel2.0语法指南
  7. jquery的animate能渐变background-color
  8. MySQL Reading table information for completion of table and column names
  9. sqlserver中计算结果保留小数
  10. centos 登陆跳转指定目录