• 豌豆资源网
  • 开引网企业服务
  • 服务外包网
  • IE6浏览器有哪些常见的bug,以及解决IE6常用bug的方法

    1、IE6不支持min-height,解决办法使用css hack:

    .target {
        min-height: 100px;
        height: auto !important;
        height: 100px;   // IE6下内容高度超过会自动扩展高度
    }
    

     

     

    2、ol内li的序号全为1,不递增。解决方法:为li设置样式display: list-item;

     

     

     

    3、未定位父元素overflow: auto;,包含position: relative;子元素,子元素高于父元素时会溢出。解决办法:1)子元素去掉position: relative;; 2)不能为子元素去掉定位时,父元素position: relative;

     

    <style type="text/css">
    .outer {
        width: 215px;
        height: 100px;
        border: 1px solid red;
        overflow: auto;
        position: relative;  /* 修复bug */
    }
    .inner {
        width: 100px;
        height: 200px;
        background-color: purple;
        position: relative;
    }
    </style>
    
    <div>
        <div></div>
    </div>
    

     

    4、IE6只支持a标签的:hover伪类,解决方法:使用js为元素监听mouseenter,mouseleave事件,添加类实现效果:

    <style type="text/css">
    .p:hover,
    .hover {
        background: purple;
    }
    </style>
    
    <p id="target">aaaa bbbbb<span>DDDDDDDDDDDd</span> aaaa lkjlkjdf j</p>
    
    <script type="text/javascript">
    function addClass(elem, cls) {
        if (elem.className) {
            elem.className += ' ' + cls;
        } else {
            elem.className = cls;
        }
    }
    function removeClass(elem, cls) {
        var className = ' ' + elem.className + ' ';
        var reg = new RegExp(' +' + cls + ' +', 'g');
        elem.className = className.replace(reg, ' ').replace(/^ +| +$/, '');
    }
    
    var target = document.getElementById('target');
    if (target.attachEvent) {
        target.attachEvent('onmouseenter', function () {
            addClass(target, 'hover');
        });
        target.attachEvent('onmouseleave', function () {
            removeClass(target, 'hover');
        })
    }
    </script>
    

    设计坞https://www.wode007.com/sites/73738.html

    5、IE5-8不支持opacity,解决办法:

    .opacity {
        opacity: 0.4
        filter: alpha(opacity=60); /* for IE5-7 */
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; /* for IE 8*/
    }
    

     

    6、IE6在设置height小于font-size时高度值为font-size,解决办法:font-size: 0;

     

    7、IE6不支持PNG透明背景,解决办法: IE6下使用gif图片

     

    8、IE6-7不支持display: inline-block解决办法:设置inline并触发hasLayout

        display: inline-block;
        *display: inline;
        *zoom: 1;
    

     

    9、IE6下浮动元素在浮动方向上与父元素边界接触元素的外边距会加倍。解决办法: 1)使用padding控制间距。 2)浮动元素display: inline;这样解决问题且无任何副作用:css标准规定浮动元素display:inline会自动调整为block

     

    10、通过为块级元素设置宽度和左右margin为auto时,IE6不能实现水平居中,解决方法:为父元素设置text-align: center;

    posted @ 2020-06-11 15:05  前端一点红  阅读(232)  评论(0编辑  收藏  举报
  • 乐游资源网
  • 热爱资源网
  • 灵活用工代发薪平台
  • 企服知识
  • 355软件知识