<!DOCTYPE html>
<html>
<head>
<meta charset="utf8">
<title></title>
<style>
.caption2 {
position: relative;
overflow: hidden;
width: 100%;
text-align: center;
}
.caption2::before,
.caption2::after {
position: absolute;
color: #000;
-webkit-transition: -webkit-transform 0.3s ease-in-out;
-moz-transition: -moz-transform 0.3s ease-in-out;
transition: transform 0.3s ease-in-out;
}
.caption2::before {
content: attr(data-title);
left: 42%;
-webkit-transform: translateY(-100%);
-moz-transform: translateY(-100%);
transform: translateY(-100%);
}
.caption2::after {
content: attr(data-description);
right: 42%;
-webkit-transform: translateY(-100%);
-moz-transform: translateY(-100%);
transform: translateY(-100%);
}
.caption2:hover::before,
.caption2:hover::after {
-webkit-transform: translateY(0);
-moz-transform: translateY(0);
transform: translateY(0);
}
</style>
</head>
<body>
<!--伪类与伪元素没有单独的过滤效果,所以思路要先在div类名caption2里面定义一个块,定好宽度高度溢出隐藏后,把伪元素放在看不见的地方,当鼠标停留在该div的时候,就会触发动画效果!-->
<!--这个效果非常的简单,便于学习与入门,动画效果也可以依照该思路该样式即可-->
<div class="caption2" data-title="(" data-description=")">XXXXXX</div>
</body>
</html>
鼠标没有移到该块时:
鼠标移到该块后: