一般情况下我们会直接用transition来设置动画效果,如
a{
transition: all 1s linear;
}
a:hover{
transform: scale(1.1);
transition: all 1s linear;
}
其中all为transition-property属性的值,all为全部,如果是想改变宽或高就设置为width或hight等,这个我们不需要;
linear为transition-timing-function属性,即动画切换效果的速度,这个我们也用不到;
1s为transition-delay属性,为动画开始的时间(可以是s秒或ms毫秒),此属性只控制动画开始的时间,那么我们只需要借助此属性即可实现hover延时消失效果啦,上CSS样式:
div{
transition-delay: .5s;
}
a:hover+div{
transition-delay: 0s;
}
完整演示代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>鼠标经过显示,离开延迟1秒后立即消失</title>
<style type="text/css">
div{
width: 100px;
height: 100px;
background: blue;
opacity: 0;
transition-delay: 1s;
}
a:hover+div{
opacity: 1;
transition-delay: 0s;
}
</style>
</head>
<body>
<a>鼠标经过显示,离开延迟1秒后立即消失</a>
<div>我显示啦</div>
</body>
</html>
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容