可能是IE z-index错误?

时间:2010-05-18 06:47:07

标签: css internet-explorer javascript

以下是我的代码。

当在浏览器中打开页面时,然后在div中选择文本,文本将显示一些阴影四边形空白。如果删除一行   的z-index:0, 在css类test1中,ie将正确执行。

在我的项目中,z-index必须设置为大于零,所以我无法删除该行。

我发现一个解决方案是在pannel.z-index大于0时设置bg_img.filter =“”,那么ie也会正常工作。但不幸的是,必须设置bg_img.filter.alpha。

那我怎么办?

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <script language="javascript" src="scripts/im_test.js"></script>
    <title>test</title>
    <style type="text/css">
      .test1 {
        position:absolute;
        background:#ffffff;
        left:20px;
        top:20px;
        border:1px solid;
        width:198px;
        height:500px;
        filter: progid:DXImageTransform.Microsoft.Shadow(color="#999999", Direction=135, Strength=5);
        z-index:0;
      }
    </style>
    <script>

    function init ()
    {
      var pannel = document.createElement ('div');
      var bg_img = document.createElement ('div');
      var head = document.createElement ('div');

      pannel.setAttribute('class', 'test1');
      pannel.setAttribute('className', 'test1');

      bg_img.style.cssText = "position:relative;left:0px;top:0px;"
      + "width:198px;"
      + "height:500px;"
      + "filter:alpha(opacity=100);";

      head.style.cssText = "position:absolute;"
      + "left:0px;"
      + "top:0px;"
      + "width:180px;"
      + "height:20px;";

      document.body.appendChild (pannel);
      pannel.appendChild(bg_img);
      pannel.appendChild(head);

      head.innerHTML = "<div>yusutechasdf</div><div>innerhtml</div>"
    }
    </script>
  </head>
  <body onload="init()">
  </body>
</html>

1 个答案:

答案 0 :(得分:0)

IE在z-index: 0;尝试将其设置为1并相应调整其他z索引时出现问题。