【发布时间】:2017-05-14 04:22:51
【问题描述】:
我可能遇到了一个相当简单的问题,但我自己无法解决。
我打算有 3 个 div,左右 div 应该作为守门人。中间的应该隐藏起来,直到我将鼠标悬停在门卫上。但是我希望中间 div 占用其他 div 留下的剩余空间。过渡也应该很顺利,但我可以自己管理。
到目前为止,这是我的代码:
<html>
<head>
<style>
.navi{
display: inline-block;
}
#middle{
transition: width 1s ease-out;
width: 0px;
overflow: hidden;
height: 0px;
}
nav{
width: 100%;
height: 169px;
position: relative;
}
nav #left:hover + #middle{
opacity: 1;
height: auto;
width: auto;
}
</style>
</head>
<body>
<nav>
<div id="left" class="navi"><img src="Left.png"></div>
<div id="middle" class="navi">Lorem Ipsum</div>
<div id="right" class="navi"><img src="Right.png"></div>
</nav>
</body>
</html>
这样做的问题是,它既不会占用所有剩余的空间,而且过渡看起来也不好看,因为文本出现在过渡的第一秒,然后就开始适应了,只要空间可用。
希望你能帮助我。
【问题讨论】:
-
当你向左悬停时,你希望在右侧居中,当你悬停在右侧时,你希望在左侧居中。你希望这种变化顺利进行。但是当你悬停在中间时会发生什么?
标签: html css transition