CSS平移实现双开门效果
一共要三张图片,一张作为父级背景,两张为兄弟左右布局
父子结构布局
一张作为父级背景,两张为兄弟左右布局。之后添加鼠标悬停效果,两张子图分别从左右平移
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NAGhI82m-1722616487491)(https://i-blog.csdnimg.cn/direct/462214b141c9402bb3aa03cd288e9691.png)]
照片
fm.img
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Jf4ZF2w6-1722616487493)(https://i-blog.csdnimg.cn/direct/9f5333b93aef4f878584e137cbe43e61.jpeg#pic_center)]
bg.img
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yDTyaV7r-1722616487494)(https://i-blog.csdnimg.cn/direct/8090cdbddf8a4c1aac5d7367c266cfb6.jpeg#pic_center)]
代码
html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>CSS平移实现双开门效果</title>
<style>
* {
margin: 0;
padding: 0;
}
.father {
display: flex;
margin: 0 auto;
width: 1366px;
height: 600px;
background-image: url(img/bg.jpg);
overflow: hidden;
}
.father .left,
.father .right {
width: 50%;
height: 600px;
background-image: url(img/fm.jpg);
transition: all 0.5s;
}
.father .right {
/* right表示精灵图从右面取 */
background-position: right 0;
}
.father:hover .left {
transform: translate(-100%);
}
.father:hover .right {
transform: translateX(100%);
}
</style>
</head>
<body>
<div class="father">
<div class="left"></div>
<div class="right"></div>
</div>
</body>
</html>