html - 将鼠标悬停在文本链接上会更改图像的 z-index

标签 html css hover z-index mousehover

我有一个元素列表,作为常规文本链接和一组疯狂和偏移堆叠在一起的图像,它们应该重叠一点但不会完全相互覆盖。它们要么放置在固定位置,要么随机放置在每个负载上,以更容易的方式放置。每个文本链接都应该“连接”(不是链接!)到这些图像之一。当您将鼠标悬停在其中一个文本链接上时,“已连接”图像应该会弹出到最前面。

我尝试了几个教程并浏览了几十个示例,实际上设法让基本代码正常工作,但现在我的图像完全重叠在一起,而我希望它们稍微移动一下。

我不知道如何解决这个问题,尽管我很确定它很容易解决。 :(

这是我的 HTML:

<!DOCTYPE html>
<html lang="de">
  <head>
    <meta charset="utf-8">
<link rel="stylesheet" href="stylesheet2.css">
<title>TEST</title>
  </head>
  <body>

<div id="switcher-wrapper">

<ul>

    <li><a id="eins" href="#"><span>projekt 1</span></a></li>
    <li><a id="zwei" href="#"><span>projekt 2</span></a></li>
    <li><a id="drei" href="#"><span>projekt 3</span></a></li>

</ul>

</div>

  </body>
</html>

这是我的 CSS:

#switcher-wrapper {
    width:1000px;
    height:600px;
    margin:20px 20px;
    border:1px solid black;
    position:relative;
}
#switcher-wrapper a {
    display:block;
    width:250px;
    height:250px;
    position:absolute;
    top:0;
    left:0;
}
#eins {
    background:url(01.jpg);
    top:300px;
}
#zwei { 
    background:url(03.jpg);
}
#drei { 
    background:url(04.jpg);

}
#switcher-wrapper a span {
    position:absolute;
}
#eins span {
    left:0;
    bottom:-135px; 
}
#zwei span {
    left:0;
    bottom:-155px; 
}
#drei span {
    left:0;
    bottom:-175px; 
}
#switcher-wrapper a:hover {
    z-index:1;
}

这是我在 jsfiddle 上的代码:http://jsfiddle.net/5gcwofmk/

最佳答案

我可以在您的代码中看到您正在尝试更改 #eins 元素的 top after 您声明了 的规则#switcher-wrapper 一个。您需要遵守您使用规则创建的范围/优先级。您可以在此 article 中阅读有关特异性的信息.

因为#eins是一个a标签; #switcher-wrapper a 实际上优先于 #eins,即使 #eins 是在 之后声明的 #切换器包装器 a.

您可以通过在您的 id 之前添加 a 标签来更正此问题,如下所示:

a#eins {
  /* rules */
}

看看这个fiddle .我已经稍微“移动”了图像,但不确定您希望它们看起来如何,所以它只是随机的。

#switcher-wrapper {
    width:1000px;
    height:600px;
    margin:20px 20px;
    border:1px solid black;
    position:relative;
}
#switcher-wrapper a {
    display:block;
    width:250px;
    height:250px;
    position:absolute;
    top:0;
    left:0;
}
a#eins {
    background:url(http://i.imgur.com/qBuL8TO.jpg);
    left: 40px;
    top: 20px;
}
a#zwei { 
    background:url(http://i.imgur.com/ddZrGHK.jpg);
    left: 20px;
    top: 20px;
}
a#drei { 
    background:url(http://i.imgur.com/39TnFyv.jpg);
}
#switcher-wrapper a span {
    position:absolute;
}
#eins span {
    left:0;
    bottom:-135px; 
}
#zwei span {
    left:0;
    bottom:-155px; 
}
#drei span {
    left:0;
    bottom:-175px; 
}
#switcher-wrapper a:hover {
    z-index:1;
}
    <title>TEST</title>
  </head>
  <body>

<div id="switcher-wrapper">

<ul>

	<li><a id="eins" href="#"><span>projekt 1</span></a></li>
	<li><a id="zwei" href="#"><span>projekt 2</span></a></li>
	<li><a id="drei" href="#"><span>projekt 3</span></a></li>

</ul>

</div>

  </body>
</html>

关于html - 将鼠标悬停在文本链接上会更改图像的 z-index,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33639843/

相关文章:

css - 防止描述列表项在缺少值时折叠

html - 使用 CSS 创建 block 悬停效果的最佳实践

javascript - 悬停在另一个 div 上时显示和隐藏按钮

javascript - 带有参数 (?) 的 HTML 地址

css - 表格边框和较窄行的间距/填充

javascript - 如何在单独的 React 组件脚本中使用 React 库?

css - 使用 onclick 更改 div 中的价格

CSS;如何为 on AND "off"hover 制作图像悬停过渡效果?

javascript - 使用数组 Javascript 制作幻灯片

html - WebSocket 性能