CSS平移实现双开门效果

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>
相关推荐
red润4 分钟前
封装hook,复刻掘金社区,暗黑白天主题切换功能
前端·javascript·vue.js
Fly-ping6 分钟前
【前端】vue3性能优化方案
前端·性能优化
curdcv_po7 分钟前
前端开发必要会的,在线JS混淆加密
前端
天生我材必有用_吴用9 分钟前
深入理解JavaScript设计模式之单例模式
前端
LuckySusu9 分钟前
【HTML篇】DOCTYPE 声明:掌握浏览器渲染模式的关键
前端·html
Darling哒10 分钟前
HTML块拖拽交换
前端
码农之王11 分钟前
(一)TypeScript概述和环境搭建
前端·后端·typescript
葬送的代码人生22 分钟前
React组件化哲学:如何优雅地"变秃也变强"
前端·javascript·react.js
用户527096487449023 分钟前
🚀 前端项目代码质量配置Prettier + Commitlint + Husky + Lint-staged
前端
xiaok24 分钟前
await返回之后的赋值给一个变量可以打印出数值,但是直接return回去之后,在另一个函数打印出来却是一个promise
前端