Z-Index和javascript用于翻转

时间:2010-04-13 09:39:55

标签: javascript css z-index rollover

我有一个带背景图像的容器(div)。在这个div中有一个菜单 - 一个水平列表。我需要的是在onMouseOver上插入一个图像,绝对定位,然后在文本后面显示它(当然!)并在div的背景图像上。我也使用jQuery,但我认为这无关紧要。可以在线查看该问题。转到http://www.w3schools.com/css/tryit.asp?filename=trycss_zindex并粘贴以下文字

<html>
<head>
  <style type="text/css">
    img {
      top: 0;
      left: 0;
      position:absolute;
      z-index:-1;
    }

    #main {
      color: red;
      margin: 30px;
      padding: 20px;
      width: 700px;
      min-height: 400px;
      z-index: -2;
      background-image: url("http://www.google.com/logos/mother10-hp.gif");
      background-repeat: no-repeat;
    }
  </style>
</head>

<body>
  <div id="main">
    <h1>Z-Index question:</h1>
    <img src="w3css.gif" width="100" height="140" />
    <p>How can we place the green pic between the text and the div#main?</p>
    <p>I need the green gif to appear</p>
    <ol>
      <li>On top of #main's background image</li>
      <li>Behind the text</li>
    </ol>
  </div>
</body>

</html>

3 个答案:

答案 0 :(得分:3)

您似乎需要position:relative;absolutefixed才能使z-index生效。

答案 1 :(得分:2)

引用the W3C

  

z-index仅适用于定位   元素(position:absolute,   position:relativeposition:fixed)。

答案 2 :(得分:0)

我为你的例子做了这个工作。希望它有所帮助。

<html>
<head>
  <style type="text/css">
    .img1 {
      top: 0;
      left: 0;
      position:absolute;
      z-index:2;
    }

    #wrapper {
      background-image: url("http://www.google.com/logos/mother10-hp.gif");
      background-repeat: no-repeat;
z-index:1;
width:600px;
height:600px;

    }

    #main {
      color: red;
      margin: 30px;
      padding: 20px;
      width: 700px;
      min-height: 400px;
      z-index: 3;
position:absolute;
    }
  </style>
</head>

<body>

<div id="wrapper">
    <div class="img1">
<img src="w3css.gif" width="100" height="140" />
    </div>
  <div id="main">
    <h1>Z-Index question:</h1>
    <p>How can we place the green pic between the text and the div#main?</p>
    <p>I need the green gif to appear</p>
    <ol>
      <li>On top of #main's background image</li>
      <li>Behind the text</li>
    </ol>
  </div>
</div>
</body>

</html>

你只能在定位元素上使用z-index,这里包装器没有定位,但它夹在两个div之间。正如我所说,这适用于发布的示例,并且不是100%准确,您将不得不为项目中的其他元素添加定位。 :)