• zindex在ie下的bug


    想要的最终效果:

    没修复前的代码:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>z-index在ie下的bug</title>
    <style type="text/css">
    *{ margin:0; padding:0;}
    
    /*第一个div p 里面包含3个div*/
    .p{ position:relative;  width:300px; height:300px;}
    .div_g{ background:#333; width:300px; height:100px; position:absolute; left:0; top:0; z-index:11}
    .div_r{ background:#F00; width:200px; height:300px; position:absolute; left:0; top:0; z-index:12}
    .div_y{ background:#F90; width:300px; height:100px; position:absolute; left:0; top:120px; z-index:13}
    
    /*第二个div p2 紫色*/
    .p2{ position:absolute; background:#60C; left:0; top:0; width:300px; height:300px; left:0; top:0; z-index:10}
    </style>
    </head>
    
    <body>
    
    <div class="p">
    <div class="div_g"></div>
    <div class="div_r"></div>
    <div class="div_y"></div>
    </div>
    
    <div class="p2"></div>
    
    <h1>现在想让第一个p重叠在p2上,p的z-index值比p2的大</h1>
    </body>
    </html>

    但是在ie6和ie7下是这样的:

    无论把div_g、div_r、div_y的z-index值设置多大都没有效果;

    网上找了一下答案,才知道是p里面设置了position:relative;属性,在ie7以下的版本里面的所有div的z-index属性都会被重新解析,换句话就是里面的div的z-index属性无论设置多大都没效果。

    解决方法:给p设置一个比p2大的z-index值;(或者删掉position:relative;这个通常是不行的)

    修复后代码:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>z-index在ie下的bug</title>
    <style type="text/css">
    *{ margin:0; padding:0;}
    
    /*第一个div p 里面包含3个div*/
    .p{ position:relative; z-index:11; width:300px; height:300px;}
    .div_g{ background:#333; width:300px; height:100px; position:absolute; left:0; top:0; z-index:11}
    .div_r{ background:#F00; width:200px; height:300px; position:absolute; left:0; top:0; z-index:12}
    .div_y{ background:#F90; width:300px; height:100px; position:absolute; left:0; top:120px; z-index:13}
    
    /*第二个div p2 紫色*/
    .p2{ position:absolute; background:#60C; left:0; top:0; width:300px; height:300px; left:0; top:0; z-index:10}
    </style>
    </head>
    
    <body>
    
    <div class="p">
    <div class="div_g"></div>
    <div class="div_r"></div>
    <div class="div_y"></div>
    </div>
    
    <div class="p2"></div>
    
    
    </body>
    </html>
  • 相关阅读:
    Android批量插入数据库提升速度(9.9)
    Android中database所在文件夹路径(9.6)
    Eclipse更改默认工作环境编码为UTF-8(9.6)
    Android下Sqlite的使用(9.7)
    Android下ListView的分页(9.6)
    【转】Tarjan算法 资料合集
    【转】BYV--有向图强连通分量的Tarjan算法
    Codeforces Round #403---C题(DFS,树)
    codeforces#403—B题(二分,三分)
    【转】毛虫算法——尺取法
  • 原文地址:https://www.cnblogs.com/csdttnk/p/3085036.html
Copyright © 2020-2023  润新知