• IE的bug及其解决方案收集


    E令人咬牙切齿的bug不胜枚举,其中IE6更是臭名昭著,令人发指。

    1、IE6下无法显示png格式的透明信息

    这个bug是众多网页设计师的噩梦,虽然可以采用gif代替,但是gif的表现力实在有限,单是阴影就无法完美显示了,这无疑给网页的表现力下了一个档次。

    解决方案:

    1. img{
    2.     filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(...);
    3. }

    主要利用IE滤镜来解决png无法透明的问题。
    接下来来看第二种解决方案:js
    点此下载
    上面是jquery用于解决这个bug的插件,强烈推荐!

    2、IE6下遮罩层无法覆盖选择框

    解决这个bug请看我之前写的一篇博文:http://www.36ria.cn/?p=395

    3、IE6下双倍外边距问题

    又是一个令人发指的bug,IE6下设置margin-left或margin-right,居然会自动加倍。

    解决方案:

    1. div#content{  
    2.     float:left;  
    3.     200px;  
    4.     margin-left:10px;  
    5.  
    6.     /* fixthedoublemarginerror*
    7.     display:inline;  
    8. }

    原理:关键是 display:inline; ,将其转换为内联元素。

    4、:hover 只支持a,无法应用于其他元素

    众所周知,在网页里面鼠标移动切换样式,是个应用非常广泛的功能,可是IE6下只支持链接,其他元素都无法使用:hover。

    解决方案:JS

    1. /* jQuery Script */  
    2. $('#list li').hover(  
    3.  
    4.     function (){  
    5.         $(this).addClass('color');  
    6.     },  
    7.       
    8.     function() {  
    9.         $(this).removeClass('color');  
    10.     }  
    11. );
    1. /*CSSStyle*/  
    2. .color {  
    3.     background-color:#f00;    
    4. }
    1. <ulid="list"> 
    2.     <li>Item 1</li> 
    3.     <li>Item 2</li> 
    4.     <li>Item 3</li> 
    5. </ul>

    原理:利用jquery的特殊的hover事件

    5、IE下不显示默认的垂直滚动条

    解决方案如下:

    1. html{  
    2.     overflow: auto;  
    3. }
     
     
  • 相关阅读:
    axis2的wsdl无法使用eclipse axis1插件来生成client--解决方法
    引用的存在价值
    阿里亲心小号实測
    UVA 1328
    XMPP 协议工作流程具体解释
    10g异机恢复后EM无法启动故障处理一例
    JVM 内存
    abstract class和interface有什么区别?
    ArrayList 如何增加大小
    IndexOutOfBoundsException ArrayList 访问越界
  • 原文地址:https://www.cnblogs.com/haiyabtx/p/2776512.html
Copyright © 2020-2023  润新知