【发布时间】:2016-03-01 11:56:00
【问题描述】:
我有 2 个 div 在容器内水平放置。我希望每个 div 在悬停时将宽度扩展到容器的整个宽度。 问题是,当指针不再悬停在左div(html流中的第一个)时,过渡后会在右div下重叠。
这是一个例子。 要重新创建,只需将指针放在左侧 div 上,直到转换完成,然后将指针从 div 上移开。 想要的效果是宽度会逐渐减小(就像右边的div一样)。
* { margin: 0; padding: 0; }
#wrap { position: relative; width: 500px; margin: 0 auto; }
#one, #two { height: 100px; position: absolute; transition: width 1s ease-out; }
#one { width: 300px; background: #49d7b0; }
#two { right: 0; width: 200px; background: #d8c800; }
#one:hover, #two:hover { width: 500px; z-index: 1; }
<!DOCTYPE html>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="z-index.css">
</head>
<body>
<div id="wrap">
<div id="one"></div>
<div id="two"></div>
</div>
</body>
</html>
【问题讨论】:
-
这是一个 z-index 问题。您必须根据鼠标的位置来增加 z-index。我认为在第一印象中,仅使用 css 很难实现这一点