CSS如何实现菜单按钮动画

这篇文章将为大家详细讲解有关CSS如何实现菜单按钮动画,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

成都创新互联专注于新郑企业网站建设,自适应网站建设,商城系统网站开发。新郑网站建设公司,为新郑等地区提供建站服务。全流程定制网站建设,专业设计,全程项目跟踪,成都创新互联专业和态度为您提供的服务

要写一个下拉菜单点击按钮 菜单入口就是是点击一个图标按钮 之前都是随便用个图片代替 今天突然想用CSS写个效果 主要参考澎湃移动端右上角的按钮

效果:

CSS如何实现菜单按钮动画

HTML

//vue 中通过点击事件改变class
    <div 
        class="burger" 
        style="float: right;"
        :class="{'transform':rightTopBtn}"
        @click.stop="rightTopBtn=!rightTopBtn"
    >
        <div></div>
        <div></div>
        <div></div>
    </div>

CSS

  <!--按钮容器 START-->
    .burger {
        cursor: pointer;
        display: inline-block;
        margin: 7px 6px 0 0;
        outline: none;
    }
    <!--按钮容器 END-->
    <!--三条横线 通过rotate3d实现旋转 START-->
    .burger div {
        width: 30px;
        height: 4px;
        margin-bottom: 6px;
        background-color: rgb(51, 51, 51);
        transform: rotate3d(0, 0, 0, 0);
    }
    <!--三条横线 END-->
    .burger.transform div {
        background-color: transparent;
    }
    .burger.transform div:first-of-type {
        top: 10px;
        transform: rotate3d(0, 0, 1, 45deg)
    }
    .burger.transform div:last-of-type {
        bottom: 10px;
        transform: rotate3d(0, 0, 1, -45deg)
    }
    <!--点击后第一个和第三个横线的效果 START-->
    .burger.transform div:first-of-type, .burger.transform div:last-of-type {
        transition: transform .4s .3s ease, background-color 250ms ease-in;
        background: #00c1de;
    }
    <!--点击后第一个和第三个横线的效果 END-->
    <!--取消点击后恢复动画 START-->
    .burger div:first-of-type, .burger div:last-of-type {
        transition: transform .3s ease .0s, background-color 0ms ease-out;
        position: relative;
    }
    <!--取消点击后恢复动画 END-->

只用transition也是能达到 animation的效果的 通过设置不同属性的变化 掌握好变化时间 和延时的时间 就可以让动画有先后顺

关于“CSS如何实现菜单按钮动画”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

当前题目:CSS如何实现菜单按钮动画
网页网址:https://www.cdcxhl.com/article24/ghogce.html

成都网站建设公司_创新互联,为您提供App设计企业网站制作自适应网站网站排名软件开发搜索引擎优化

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

外贸网站制作