CSS3 实现侧边栏展开收起动画

这篇文章主要介绍了如何使用css3 实现侧边栏展开收起动画,并附上了示例代码,非常的详细,推荐给需要的小伙伴。

@keyframes

规则用于创建动画。

@keyframes 中规定某项 CSS 样式,就能创建由当前样式逐渐改为新样式的动画效果

@keyframes 中创建动画时,请把它捆绑到某个选择器,否则不会产生动画效果。

通过规定至少以下两项 CSS3 动画属性,即可将动画绑定到选择器:

立即学习“前端免费学习笔记(深入)”;

      规定动画的名称
      规定动画的时长
animation

animation 属性是一个简写属性,用于设置动画属性:

animation-name:规定 @keyframes 动画的名称。
animation-duration:规定动画完成一个周期所花费的秒或毫秒。默认是 0。
animation-timing-function:规定动画的速度曲线。默认是 “ease”。
animation-delay:规定动画何时开始。默认是 0
animation-iteration-count:规定动画被播放的次数。默认是 1。
animation-direction:规定动画是否在下一周期逆向地播放。默认是 “normal”。
animation-fill-mode:规定对象动画时间之外的状态

侧边栏实现

/* 动画定义 */@-webkit-keyframes move_right {    from {        opacity: 0;    }    to {        opacity: 1;        -webkit-transform: translateX(120px);        transform: translateX(120px);    }}@keyframes move_right {    from {        opacity: 0;    }    to {        opacity: 1;        -webkit-transform: translateX(120px);        transform: translateX(120px);    }}@-webkit-keyframes move_left {    from {        opacity: 1;    }    to {        opacity: 0;        -webkit-transform: translateX(-120px);        transform: translateX(-120px);    }}@keyframes move_left {    from {        opacity: 1;    }    to {        opacity: 0;        -webkit-transform: translateX(-120px);        transform: translateX(-120px);    }}@-webkit-keyframes move_up {    from {        opacity: 0;    }    to {        opacity: 1;        -webkit-transform: translateY(-250px);        transform: translateY(-250px);    }}@keyframes move_up {    from {        opacity: 0;    }    to {        opacity: 1;        -webkit-transform: translateY(-250px);        transform: translateY(-250px);    }}
/* 动画绑定 */ .move_right {     -webkit-animation-name            : move_right;     animation-name            : move_right;     -webkit-animation-duration        : 1s;     animation-duration        : 1s;     -webkit-animation-iteration-count : 1;     animation-iteration-count : 1;     -webkit-animation-fill-mode : forwards;     animation-fill-mode : forwards; } .move_left {     -webkit-animation-name            : move_left;     animation-name            : move_left;     -webkit-animation-duration        : 1s;     animation-duration        : 1s;     -webkit-animation-iteration-count : 1;     animation-iteration-count : 1;     -webkit-animation-fill-mode : forwards;     animation-fill-mode : forwards; } .move_up {     -webkit-animation-name            : move_up;     animation-name            : move_up;     -webkit-animation-duration        : 1s;     animation-duration        : 1s;     -webkit-animation-iteration-count : 1;     animation-iteration-count : 1;     -webkit-animation-fill-mode : forwards;     animation-fill-mode : forwards; } .fadeIn {     -webkit-transform : translateX(120px);     transform : translateX(120px);      opacity: 1; } .fadeInUp {     -webkit-transform : translateY(-250px);     transform : translateY(-250px);     opacity: 1;     -webkit-transition :-webkit-transform .2s ease-out,opacity .2s ease-out;      transition :transform .2s ease-out, opacity .2s ease-out; } .fadeOutLeft {     -webkit-transform : translateX(-120px);     transform : translateX(-120px);      opacity: 0.0;     -webkit-transition :-webkit-transform .2s ease-out,opacity .2s ease-out;      transition :transform .2s ease-out, opacity .2s ease-out; }

html

            demo                 

加入JS

 var sidebarEl = document.querySelector(".sidebar"); function fadeIn (e) {     sidebarEl.className = 'sidebar fullHeight';     sidebarEl.style.top = '0px';     sidebarEl.style.left = '0px';     sidebarEl.classList.add('move_right'); } function fadeOut (e) {     sidebarEl.className = 'sidebar fullHeight';     sidebarEl.style.left = '120px';     sidebarEl.classList.add('move_left'); } function fadeInUp(e) {     sidebarEl.className = 'sidebar fullHeight';     sidebarEl.style.top = '250px';     sidebarEl.style.left = '120px';     sidebarEl.classList.add('move_up'); } function fadeOutLeft(e) {     sidebarEl.className = 'sidebar fullHeight';     sidebarEl.style.top = '0px';     sidebarEl.style.left = '120px';     sidebarEl.classList.add('move_left'); } 

以上就是使用CSS3制作侧边栏动画效果的全部内容和代码了,小伙伴们根据自己的项目需求来改善美化下就可以了哦。

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

相关推荐:

如何用css3绘制一个圆的loading转圈动画

如何设置CSS 文本字体颜色

以上就是CSS3 实现侧边栏展开收起动画的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1610107.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月24日 01:13:51
下一篇 2025年12月24日 01:14:25

相关推荐

  • 五个实用技巧,让你更好地使用display

    探索display的五个实用技巧 在现代社会中,display(展示)已经成为了一个非常重要的概念。无论是在商业领域还是在个人生活中,我们都需要有一定的展示能力来吸引人们的注意力,让自己或者自己的产品得到更多的关注和认可。本文将介绍五个实用的display技巧,帮助读者更好地展示自己。 技巧一:创造…

    2025年12月24日
    000
  • 如何使用CSS实现元素的边框动画效果

    如何使用CSS实现元素的边框动画效果 导语:在网页设计中,为了增加用户的视觉体验和页面的吸引力,常常会使用一些动画效果来使页面元素更加生动和有趣。其中,边框动画是一种很常见的效果,它可以使元素边框呈现出变化、闪烁或者流动的动态效果。本文将介绍如何使用CSS来实现元素的边框动画效果,并提供具体的代码示…

    2025年12月24日
    000
  • CSS动画:如何实现元素的抖动缩放效果

    CSS动画:如何实现元素的抖动缩放效果 在网页设计中,元素的动画效果能够增加用户的视觉体验,为平淡的页面增添活力。而CSS动画正是实现这些效果的强大工具之一。本文将详细介绍如何使用CSS动画实现元素的抖动缩放效果,并提供具体的代码示例供读者参考。 抖动缩放效果是一种常见的动画效果,在用户交互、页面加…

    2025年12月24日
    000
  • CSS动画:如何实现元素的闪光效果

    CSS动画:如何实现元素的闪光效果,需要具体代码示例 在网页设计中,动画效果有时可以为页面带来很好的用户体验。而闪光效果是一种常见的动画效果,它可以使元素更加引人注目。下面将介绍如何使用CSS实现元素的闪光效果。 一、闪光的基本实现 首先,我们需要使用CSS的animation属性来实现闪光效果。a…

    2025年12月24日
    000
  • CSS属性实现边框动画效果的技巧

    CSS属性实现边框动画效果的技巧,需要具体代码示例 随着Web技术的不断发展,页面设计的要求也越来越高。在页面设计中,动画效果是吸引用户注意力的重要手段之一。其中,边框动画效果可以为页面增添生气和活力。本文将介绍一些CSS属性的使用技巧,帮助你实现各种各样的边框动画效果。 一、使用transitio…

    2025年12月24日
    000
  • CSS 动画属性:transform 和 transition

    CSS 动画属性:transform 和 transition 在现代网页设计中,动画效果已经成为一种不可或缺的元素,能够为页面增添活力和吸引力。CSS 提供了一些属性和功能来实现各种动画效果,其中最常用的两个属性是 transform 和 transition。本文将详细介绍这两个属性,并提供具体…

    2025年12月24日
    000
  • CSS 图像属性指南:outline 和 display

    CSS 图像属性指南:outline 和 display CSS 是前端开发中不可或缺的一部分,其中图像属性也是必不可少的。在这篇文章中,我们将重点介绍两个关于图像属性的重要概念:outline 和 display。本文将详细说明它们的定义、用法以及具体的代码示例。 outline 属性 概述:ou…

    2025年12月24日
    000
  • CSS 动画属性优化技巧:animation 和 transition

    CSS 动画属性优化技巧:animation 和 transition 引言:随着 Web 技术的不断发展,CSS 动画成为了网页设计和开发中非常重要的一部分。在过去,开发者通常使用 JavaScript 来实现动画效果,但现在通过 CSS 动画属性,我们可以更加轻松和高效地创建各种动画效果。本文将…

    2025年12月24日
    000
  • CSS网页布局技巧:实现分栏和侧边栏的最佳实践

    CSS网页布局技巧:实现分栏和侧边栏的最佳实践 在开发网页时,一个常见的需求是实现分栏和侧边栏的布局。这种布局可以将页面内容划分为主要内容区域和边栏区域,使网页结构更清晰,提高用户体验。在本文中,我们将介绍一些实现分栏和侧边栏布局的最佳实践,并提供具体的代码示例。 一、使用CSS Grid布局 CS…

    2025年12月24日
    000
  • CSS动画指南:手把手教你制作闪光特效

    CSS动画指南:手把手教你制作闪光特效 在当今的网页设计中,动画效果成为了吸引用户注意力和提升用户体验的重要因素之一。其中CSS动画是实现各种效果的常见方法之一。本文将向您介绍如何使用CSS创建一个令人惊叹的闪光特效,并提供具体的代码示例。 闪光特效可以使页面元素在光线的照射下产生闪烁或闪光的效果,…

    2025年12月24日
    000
  • CSS实现侧边栏菜单特效的技巧和方法

    CSS实现侧边栏菜单特效的技巧和方法 近年来,随着网页设计的发展,侧边栏菜单成为了许多网页中常见的元素之一。无论是用于导航功能还是展示内容,都能给用户带来方便和更好的使用体验。本文将介绍一些常见的CSS技巧和方法,帮助你实现一个漂亮且具有特效的侧边栏菜单。 一、基本布局和样式设置 首先,我们需要设置…

    2025年12月24日
    000
  • CSS动画教程:手把手教你实现闪烁文本特效

    CSS动画教程:手把手教你实现闪烁文本特效 CSS(Cascading Style Sheets)是一种用于为网页添加样式和布局的标记语言。通过使用CSS,我们可以为HTML元素添加动画效果,使网页更加生动和吸引人。 在本教程中,我将向您展示如何使用CSS来实现一个简单的闪烁文本特效。您将会学到如何…

    2025年12月24日
    000
  • CSS实现标题文字动画效果的方法和技巧

    CSS实现标题文字动画效果的方法和技巧,需要具体代码示例 在网页设计和开发中,动画效果可以提升用户体验,增加页面的吸引力和活力。标题文字动画效果是一种常见的设计手法,它可以让页面的标题更加生动和有趣。本文将介绍一些CSS实现标题文字动画效果的方法和技巧,并提供具体的代码示例。 渐变动画效果 渐变动画…

    2025年12月24日
    000
  • 如何巧妙运用jQuery和CSS3的动画功能创造出吸引人的网页效果

    如何巧妙运用jQuery和CSS3的动画功能创造出吸引人的网页效果 随着互联网技术的不断进步和发展,网页设计作为传递信息和吸引用户注意力的重要手段,无疑扮演着重要的角色。为了提供更好的用户体验,网页设计师们不断寻求创新与突破。而利用jQuery和CSS3的动画功能,成为了设计师们制造吸引人网页效果的…

    2025年12月24日
    000
  • CSS3动画与jQuery的比较:选择适合您项目需求的技术

    CSS3动画与jQuery的比较:选择适合您项目需求的技术 引言: 在前端开发中,动画效果是提升用户体验的重要组成部分。在过去,开发人员主要使用jQuery来实现页面上的动画效果。然而,随着CSS3的发展,它提供了强大的动画功能,使得使用纯CSS来实现动画效果成为可能。本文将对CSS3动画和jQue…

    2025年12月24日
    000
  • 带你吃透CSS3属性:transition 与 transform

    本篇文章带大家了解下css 中的 transition (过渡) 和 transform (动画) 属性,这两个属性的参数确实比较复杂,它们可以做出 css 的一些基础动画效果,平移,旋转,倾角……等等,这些也是我早期学习 css 的难记易忘之处,今天给大家详细总结出来。 一…

    2025年12月24日 好文分享
    000
  • 一文详解CSS3中的Flex布局

    本篇文章带大家了解一下css3中的flex布局,希望对大家有所帮助! 简介 什么是Flex布局 Flex是Flexible Box 的缩写,也称为弹性盒子布局。 Flex布局组成: flex容器(flex container)flex项(flex items)主轴(main axis)交叉轴(cro…

    2025年12月24日 好文分享
    000
  • 【整理总结】这些高级CSS技巧,你会几种?

    本篇文章带你玩转css,分享一些高级css技巧,快来看看你是否都会呀! 学习目标 能够使用精灵图能够使用字体图标能够写出 CSS 三角能够写出常见的 CSS 用户界面样式能够说出常见的布局技巧 精灵图 1. 为什么需要精灵图? 客户端要访问一个网页时,浏览器会向服务器发送请求,服务器接收到请求后,会…

    2025年12月24日 好文分享
    000
  • 手把手教你使用CSS实现酷炫六边形网格背景图

    本篇文章给大家分享不规则图形背景排版高阶技巧,介绍一下如何使用css实现酷炫六边形网格背景图,希望对大家有所帮助! 今天,收到一个很有意思的提问,如何实现类似如下的背景效果图: 嗯?核心主体是由多个六边形网格叠加形成。 立即学习“前端免费学习笔记(深入)”; 那么我们该如何实现它呢?使用纯 CSS …

    2025年12月24日 好文分享
    000
  • CSS新特性学习:方向裁切overflow:clip

    本篇文章将介绍一个新特性,从 chrome 90 开始,overflow 新增的一个新特性 — overflow: clip,使用它,轻松的对溢出方向进行控制。 overflow: clip 为何 首先,简单介绍下 overflow: clip 的用法。 overflow: clip: …

    2025年12月24日 好文分享
    000

发表回复

登录后才能评论
关注微信