您现在的位置是:网站首页> 编程资料编程资料
纯CSS实现波浪移动效果的示例纯css3制作鼠标悬停波浪形状弹性下拉菜单特效源码css3实现逼真的波浪起伏动画特效源码CSS3实现的波浪闪动文字动画特效源码纯css3实现的音阶波浪loading加载动画特效源码CSS3实现文字波浪线效果示例代码纯css3实现的文字波浪动画特效源码纯CSS3实现波浪形菜单效果源码纯CSS3实现3D波浪形动画有波浪起伏的效果CSS Houdini实现动态波浪纹效果
2021-09-04
1037人已围观
简介 本篇文章主要介绍了纯CSS实现波浪移动效果的示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
在某些页面上常常看到波浪的效果,虽然只有装饰的作用,但是却让页面看上去更生动了,同时某些情况下也能起到进度条的作用,而波浪的形式却比普通进度条更美观有趣。
如果想要实现波浪的效果,作者想到的第一个方法是通过 canvas 绘制波浪,然后用帧动画让波浪运动起来。这种方式实现的波浪效果应该是最好的,能够实现很多细节,比如控制波峰的高度、改变波浪的数量、根据前一个波浪的高度计算后一个波浪的高度等等。
但是往往需求并不会这么复杂,产品经理和设计想要的只是一个看上去还比较美观的波浪效果而已。如果用 canvas 去做,就实在是大材小用了,耗时耗力。所以这种情况下,就可以尝试使用 css 来完成这个小需求。
分析波浪效果

上面是作者完成的波浪效果的其中一种(不会做 gif,就用多张图片拼贴在一起代替吧),它有两个波峰,这两个波峰动起来时,会有一种向右推进的效果。我们先一个一个来看,如果要实现一个波峰,我们应该怎么做?
波峰具有弧度,在 css 中能够实现弧度效果的是border-raduis这个属性;而对于向右推进的效果,单个来看的话,其实可以理解为是旋转动画,我们可以通过animation来实现。
// html // style .wave { width: 300px; height: 300px; border-raduis: 50%; background: blue; } 上面代码中的.wave在页面上的显示效果是一个圆形。虽然还没有添加动画,但是我们已经可以预想到,即使旋转起来,我们视觉上看来并没有在运动。这要怎么解决呢?其实很简单,只要让每一个角的弧度都不同就行了。同时,让宽高不同,可以使绘制出来的效果更好。
.wave { width: 250px; height: 300px; border-top-right-radius: 150px; border-top-left-radius: 150px; border-bottom-right-radius: 150px; border-bottom-left-radius: 140px; background: #adcbfe; } 然后通过动画使这个不规则的形状动起来。
.wave { width: 250px; height: 300px; border-top-right-radius: 150px; border-top-left-radius: 150px; border-bottom-right-radius: 150px; border-bottom-left-radius: 140px; background: #adcbfe; animation: wave 4s linear infinite; } @keyframes wave { 0% {transform: rotate(0deg);} 100% {transform: rotate(360deg);} } 关于 css 动画的使用,可以参考之前的一篇文章:
到这里,一个波浪的实现就完成了。第二个波浪的实现步骤和第一个是相同的,但是可以对width height border-raduis animation 这些属性进行修改,使两个波浪的运动节奏不同,有快有慢有高有低,这样波浪的效果就会更真实。
想要看源码的小伙伴可以戳下面这个链接:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
相关内容
- 详解CSS 3 中的 calc() 方法css3中的calc函数浅析巧用CSS3的calc()宽度计算做响应模式布局的方法CSS3 calc()会计算属性详解浅谈css3中calc在less编译时被计算的解决办法CSS3 Calc实现滚动条出现页面不跳动问题 CSS3的calc()做响应模式布局的实现方法CSS3 函数技巧 用css 实现js实现的事情(clac Counters Tooltip)深入理解CSS中的数学表达式calc()
- CSS预处理器Sass详解利用CSS的Sass预处理器(框架)来制作居中效果学习CSS预处理器:Sass和less进行对比
- CSS 垂直水平居中的5种最佳解决方案CSS水平垂直居中解决方案(6种)利用css设置元素垂直居中的解决方法汇总CSS实现垂直居中的4种思路详解css实现元素水平垂直居中常见的两种方式实例详解CSS水平垂直居中的几种方法总结css让容器水平垂直居中的7种方式利用CSS3的flexbox实现水平垂直居中与三列等高布局CSS设置文字图片垂直居中的方法总结深入理解CSS行高line-height与文本垂直居中的原理23种CSS垂直居中技巧
- css3实现冲击波效果的示例代码css3中transform属性实现的4种功能详解CSS3.0(Cascading Style Sheet) 层叠级联样式表纯CSS3实现div按照顺序出入效果CSS3实现列表无限滚动/轮播效果css3 利用transform-origin 实现圆点分布在大圆上布局及旋转特效CSS3实现的侧滑菜单CSS3实现的3D隧道效果用CSS3画一个爱心css3 实现文字闪烁效果的三种方式示例代码六种css3实现的边框过渡效果
- 纯CSS实现下拉菜单的示例代码js+css3制作下拉城市菜单多选代码CSS中的导航栏和下拉菜单的实现HTML+CSS实现下拉菜单的实现纯CSS实现的大型下拉菜单的示例代码纯css3制作鼠标悬停波浪形状弹性下拉菜单特效源码纯CSS+HTML大型下拉菜单特效HTML+CSS实现简单下拉菜单效果利用纯css做一个下拉菜单功能的示例代码
- css 进度条的文字根据进度渐变的示例代码利用css3实现进度条效果及动态添加百分比css 横向进度条和竖向进度条实现代码使用 css3 实现圆形进度条的示例利用CSS3实现进度条的两种姿势详解使用CSS实现阅读进度条css 实现圆形渐变进度条效果的示例代码
- css3如何绘制一个圆圆的loading转圈动画纯CSS3实现的多层圆环loading加载动画特效源码css3 animation制作loading白色圆点滑过加载动画特效源码纯CSS3实现的红酒碰杯loading动画效果源码css3 svg实现的三角形图标变换loading加载动画特效源码15种HTML5和CSS3炫酷彩色loading加载动画特效详解纯CSS3制作的20种loading动效11种CSS3波形loading加载动画特效基于CSS3实现的几个小loading效果
- 浅谈css网页的几种布局详解css布局实现左中右布局的5种方式CSS实现多行多列的布局的实例代码css Flex布局的可伸缩性(Flexibility)如何理解 CSS 布局和块级格式上下文浅谈css sticker-footer 布局详解使用CSS3的@media来编写响应式的页面 CSS布局方案小结
- 详解CSS选择符之子代选择符CSS样式子代选择符(大于号 >)使用实例
- 纯css实现树形结构的示例代码CSS Transition通过改变Height实现展开收起元素从QQtabBar看css命名规范BEM的详细介绍css实现两栏布局,左侧固定宽,右侧自适应的多种方法CSS 实现Chrome标签栏的技巧CSS实现两列布局的N种方法CSS实现隐藏搜索框功能(动画正反向序列)CSS3中Animation实现简单的手指点击动画的示例详解CSS中的特指度和层叠问题详解overflow:hidden的作用(溢出隐藏、清除浮动、解决外边距塌陷)关于CSS浮动与取消浮动的问题
