S. *_* E. 11 html css css3 css-transitions
所以我在悬停时进行了这种转换,这使得边框位于悬停在元素底部.一切都很好,但是当鼠标离开元素时,边框就会消失,而我希望它再次"缩回".Codepen
HTML:
<div class="object">
<p>Object</p>
</div>
Run Code Online (Sandbox Code Playgroud)
CSS:
* {
background-color: #222;
color: white;
font-family: sans-serif;
font-size: 30pt;
}
p {
width: 200px;
height: 100%;
margin-top: 70px;
text-align: center;
transition: 0.2s border-bottom;
-webkit-transition: 0.2s border-bottom;
margin: auto;
margin-top: 50px;
}
p:hover {
border-bottom: 5px solid white;
}
Run Code Online (Sandbox Code Playgroud)
我该如何做到这一点,尽可能简单?谢谢; 3
Que*_*tin 14
过渡在两个方向上自动进行.
您遇到的问题是,这border-style不是可以动画的属性,因此它会立即更改.
这意味着当你将它悬停时,它会solid立即转变,然后花费时间5px.
但是当你解开它时,它会none瞬间变得无法看到宽度动画.
使默认(非悬停)状态显式化,以便border-width在悬停它时唯一的变化.
加:
border-bottom: 0px solid white;
Run Code Online (Sandbox Code Playgroud)
遵守规则p.
小智 6
我不知道这是否有帮助,但就我而言,我只是这样做:
超过:
.<nameOfClass>:hover{
transition: width 0.4s ease-in-out;
}
Run Code Online (Sandbox Code Playgroud)
没有结束:
.<nameOfClass>:not(:hover){
transition: width 0.4s ease-in-out;
}
Run Code Online (Sandbox Code Playgroud)