IE6常见CSS解析Bug及hack

IE6常见CSS解析Bug及hack

###### 1)图片间隙

   描述:在div,dl,li中插入图片时,图片会将盒子下方撑大3px~5px(设置高度后依旧被撑大)
??? hack1:将</div>与<img/>写在一行上(针对div);
??? hack2:将<img/>转为块状元素,添加声明:display:block;(都有效)
??? hack3:给父元素添加:font-size:0,需要给子元素单独添加font-size;(都有效)
??? hack4:给父元素设置overflow:hidden

2) 双倍浮向(双倍边距)

??? 描述:当Ie6及更低版本浏览器在解析浮动元素时,会错误地把浮向边界加倍显示。
??? hack:给浮动元素添加声明:display:inline。

3)当li里面有a和span两个标签,并给span设置了浮动

描述:在li里面的a或者span设置了浮动,在IE6里面解析出来比正常浏览器高Hack:给a和span同时浮动, li有高度情况下在IE6里面会有间隙,给li标签设置vertical-align:top
(当li里面有元素,并且有高度的情况下,在IE6下,li之间有间距—给li添加属性vertical-align:top可以解决li在IE6里面下方有4px间距的问题)

4)默认高度(IE6)

?? 描述:在IE6及以下版本中,部分块元素拥有默认高度(低于18px高度)。
hack1:给元素添加声明:font-size:0;
hack2:给元素添加声明:overflow:hidden。

5)百分比bug

描述:在IE6及以下版本中在解析百分比时,会按四舍五入方式计算从而导致50%加50%大于100%的??????
hack : 给右面的浮动元素添加声明: clear:right;清除右浮动。

6)鼠标指针bug

描述:cursor属性的hand属性值只有IE浏览器识别,其它浏览器不识别该声明,cursor属性的pointer属性值IE6.0以上版本及其它内核浏览器都识别该声明。
hack:如统一某元素鼠标指针形状为手型,应添加声明:cursor:pointer;
cursor:属性规定要显示的光标的标的类型(形状)
```

原文地址:https://www.cnblogs.com/hff-syt/p/11973520.html

时间: 2024-10-13 00:48:06

IE6常见CSS解析Bug及hack的相关文章

ie6常见css bug

相信每个前端人都会有同感——ie6这东西真是万恶啊!就连ms也大力鼓励消费者淘汰ie6,不过很不幸,大概是因为xp绑定了ie6,因此在国内ie6的市场占有率仍高达42.43%,这是今年2月份的数据.也正因ie6的高占有率,因此在网站开发时也不得不考虑兼容ie6,就算不做到完美兼容,来个基本兼容也是必须的,起码不要让你的网站在ie6中乱套了.今天就跟大家分享一些平时积累的ie6 bug解决方法. IE6双倍边距bug 当页面内有多个连续浮动时,如本页的图标列表是采用左浮动,此时设置li的左侧mar

前端之旅HTML与CSS篇之IE6常见BUG

1.IE6怪异解析之padding与border算入宽高原因:未加文档声明造成非盒模型解析解决方法:加入文档声明<!doctype html> 2.IE6在块元素.左右浮动.设定marin时造成margin双倍(双边距)解决方法:display:inline 3.以下三种其实是同一种bug,其实也不算是个bug,举个例子:父标签高度20,子标签11,垂直居中,20-11=9,9要分给文字的上面与下面,怎么分?IE6就会与其它的不同,所以,尽量避免.1)字体大小为奇数之边框高度少1px解决方法:

[ 打败 IE 的葵花宝典 ] IE6中css常见BUG全集及解决方案

IE6双倍边距bug 当页面内有多个连续浮动时,如本页的图标列表是采用左浮动,此时设置li的左侧margin值时,在最左侧呈现双倍情况.如外边距设置为10px, 而左侧则呈现出20px,解决它的方法是在浮动元素上加上display:inline;的样式,这样就可避免双倍边距bug. 3像素问题及解决办法 当使用float浮动容器后,在IE6下会产生3px的空隙,有意思的是右侧容器没设置高度时3px在右侧容器内部,当设定高度后又跑到容器的左侧了,所以对布局精度要求高的话,请参考例29.31的解决方

IE6兼容性问题IE6常见bug

IE6兼容性问题及IE6常见bug详细汇总 来源:互联网 作者:佚名 时间:03-31 16:03:45 [大 中 小] IE6的兼容性问题一直都是前端工程师的恶梦,为了早早脱离这种困境,本文整理了一些相关兼容性的知识,感兴趣的朋友可以参考下哈,希望可以帮助到你 1.IE6怪异解析之padding与border算入宽高 原因:未加文档声明造成非盒模型解析 解决方法:加入文档声明<!doctype html> 2.IE6在块元素.左右浮动.设定marin时造成margin双倍(双边距) 解决方法

IE6常见bug

1.IE6怪异解析之padding与border算入宽高 原因:未加文档声明造成非盒模型解析 解决方法:加入文档声明<!doctype html> 2.IE6在块元素.左右浮动.设定marin时造成margin双倍(双边距) 解决方法:display:inline 3.以下三种其实是同一种bug,其实也不算是个bug,举个例子:父标签高度20,子标签11,垂直居中,20-11=9,9要分给文字的上面与下面,怎么分?IE6就会与其它的不同,所以,尽量避免. 1)字体大小为奇数之边框高度少1px

IE6兼容性问题及IE6常见bug详细汇总(转)

IE6的兼容性问题一直都是前端工程师的恶梦,为了早早脱离这种困境,本文整理了一些相关兼容性的知识,感兴趣的朋友可以参考下哈,希望可以帮助到你. 1.IE6怪异解析之padding与border算入宽高 原因:未加文档声明造成非盒模型解析 解决方法:加入文档声明<!doctype html> 2.IE6在块元素.左右浮动.设定marin时造成margin双倍(双边距) 解决方法:display:inline 3.以下三种其实是同一种bug,其实也不算是个bug,举个例子:父标签高度20,子标签1

IE6常见bug总结

1.IE6怪异解析之padding与border算入宽高 原因:未加文档声明造成非盒模型解析 解决方法:加入文档声明<!doctype html> 2.IE6在块元素.左右浮动.设定marin时造成margin双倍(双边距) 解决方法:display:inline 3.以下三种其实是同一种bug,其实也不算是个bug,举个例子:父标签高度20,子标签11,垂直居中,20-11=9,9要分给文字的上面与下面,怎么分?IE6就会与其它的不同,所以,尽量避免. 1)字体大小为奇数之边框高度少1px

IE6兼容性问题及IE6常见bug详细汇总

转载地址:http://www.jb51.net/css/76894.html 1.IE6怪异解析之padding与border算入宽高 原因:未加文档声明造成非盒模型解析 解决方法:加入文档声明<!doctype html> 2.IE6在块元素.左右浮动.设定marin时造成margin双倍(双边距) 解决方法:display:inline 3.以下三种其实是同一种bug,其实也不算是个bug,举个例子:父标签高度20,子标签11,垂直居中,20-11=9,9要分给文字的上面与下面,怎么分?

IE6常见的bug及解决方法

1.IE6怪异解析之padding与border算入宽高 原因:未加文档声明造成非盒模型解析 解决方法:加入文档声明<!doctype html> 2.IE6在块元素.左右浮动.设定marin时造成margin双倍(双边距) 解决方法:display:inline 3.以下三种其实是同一种bug,其实也不算是个bug,举个例子:父标签高度20,子标签11,垂直居中,20-11=9,9要分给文字的上面与下面,怎么分?IE6就会与其它的不同,所以,尽量避免. 1)字体大小为奇数之边框高度少1px