携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第23天,点击查看活动详情 ui设计的元素有时候需要有一些动画效果,可以直接用css动画来实现。

实现一个中心圆向四周有水波纹的效果

利用定位添加多个圆,给他们加上动画,使得依次从小变大,这样就形成了逐渐外扩的动画效果

(一)中间圆

绘制中间的圆

.logo {
width: 80px;
height: 80px;
background: #7EC4FC;
color: #fff;
text-align: center;
line-height: 80px;
border-radius: 50%;
position: absolute;
top: 310px;
left: 0;
right: 0;
margin: 0 auto;
z-index: 9;
}

  

 

(二)水波纹最大的圆

绘制水波纹最大可扩大的圆的大小

.animate-wave {
width: 500px;
height: 500px;
position: absolute;
top: 100px;
left: 0;
right: 0;
margin: 0 auto;
background: #C3E4FF;
border-radius: 50%;
}

  

 

要实现4个个依次扩大的水波纹效果

<div class="animate-wave">
<div class="w1"></div>
<div class="w2"></div>
<div class="w3"></div>
<div class="w4"></div>
</div>

(三)水波纹动画

设置动画,0%的时候是宽高为0,逐渐增大,100%时候增大到最大,依次添加动画延迟,这样就有水波纹的效果了

@-webkit-keyframes opac {
from {
opacity: 1;
width: 0;
height: 0;
top: 50%;
left: 50%;
} to {
opacity: 0;
width: 100%;
height: 100%;
top: 0;
left: 0;
}
} .animate-wave * {
background: #C3E4FF;
position: absolute;
border-radius: 50%;
animation: opac 4s infinite;
} .animate-wave .w2 {
animation-delay: 1s;
} .animate-wave .w3 {
animation-delay: 2s;
} .animate-wave .w4 {
animation-delay: 3s;
}

 

(四)最终效果

图片实现水波纹

观察这个效果,是有从中间逐渐向外扩的效果 定义水波纹标签

<div class="w w5"></div>
<div class="w w4"></div>
<div class="w w3"></div>
<div class="w w2"></div>
<div class="w w1"></div>
<div class="w w0"></div>

  

 

(一)初始圆

.w{
position: absolute;
top: calc((100% - 50px)/2);
left: calc((100% - 50px)/2);
width: 50px;
height: 50px;
border-radius: 500px;
background: url('../img/2.jpg') fixed center center;
}
 

效果

(二)水波纹

div盒子的class设置为“w0-5”,给它样式设置设置图像的z-index属性;再给background-size属性指定背景图像的大小;动画animation绑定到一个<div>元素,只要把六个div叠在一起,搭配CSS的animation,就可以让六个div依序出现

.w0{
z-index: 2;
background-size: auto 106%;
animation: w 1s forwards;
} .w1{
z-index: 3;
background-size: auto 102%;
animation: w 1s .2s forwards;
} .w2{
z-index: 4;
background-size: auto 104%;
animation: w 1s .4s forwards;
} .w3{
z-index: 5;
background-size: auto 101%;
animation: w 1s .5s forwards;
} .w4{
z-index: 6;
background-size: auto 102%;
animation: w 1s .8s forwards;
} .w5{
z-index: 7;
background-size: auto 100%;
animation: w 1s 1s forwards;
}

  

 

(三)动画效果

通过@keyframes规则,创建动画是通过逐步改变0%是开头动画,100%是当动画完成

@keyframes w{
0%{
top: calc((100% - 50px)/2);
left: calc((100% - 50px)/2);
width: 50px;
height: 50px;
} 100%{
top: calc((100% - 500px)/2);
left: calc((100% - 500px)/2);
width: 500px;
height: 500px;
}
}

  

 

(四)最终效果

炫酷 css实现水波纹的更多相关文章

  1. css 实现水波纹,波浪动画效果

    <div class="wave"> 水波纹效果 <div class="wave1"></div> <div cla ...

  2. 炫酷 CSS 背景效果的 10 个代码片段

    在现代网页设计中,大背景图设计非常流行.随着高清(现在是4K)显示器的出现,越来越多的网页设计师使用大背景图来填充屏幕. 因为这样可以造成很大的视觉冲击力,并有助于更好的传递所要表现的内容. 但是,如 ...

  3. 炫酷CSS

    <!DOCTYPE html><!--To change this license header, choose License Headers in Project Propert ...

  4. css实现水波纹效果

    1. HTML 代码: <div class="example"> <div class="dot"></div> < ...

  5. 44、css实现水波纹效果

    <div class="container"> <div class="wave"><span>50%</span&g ...

  6. CSS 按钮水波纹特效

    /* 按钮反馈之波纹 */ .ripple { position: relative; /* overflow:hidden */  打开注释及效果不扩散在外 } .ripple:focus{ out ...

  7. CSS 冲击波(水波纹)效果

    <span style="font-size:18px;"><!DOCTYPE html> <html> <head> <me ...

  8. 三角函数之美-水波纹载入LoadingView

    一.前言 学习是要总结的.近期几天学习了画图相关的,可是使用的机会较少,如今又快要遗忘了,这次看了水波纹的绘制.认为十分有意思,还是 把实现的方法记录下来.技术无他,为手熟尔.还是要多练习,空淡误国, ...

  9. 纯CSS炫酷的3D旋转

    <html><head><meta charset="utf-8"><title>纯CSS炫酷的3D旋转</title> ...

  10. css 滚动视差 之 水波纹效果

    核心属性: background-attachment 这个属性就牛逼了, 它可以定义背景图片是相对视口固定, 还是随着视口滚动, 加上这个属性网页瞬间就从屌丝变成 高大上. 我们来看个例子: htm ...

随机推荐

  1. Java基础篇——垃圾收集详解

    JAVA垃圾收集 1.如何判断对象死亡 说道垃圾回收,那么首要问题就是jvm如何判断一个对象已经死亡呢 1.1 引用计数法 说白了,就是为每个对象设立一个引用计数器,每当有一个引用指向它,计数器加一, ...

  2. Spring Boot通过Actuator显示git和build的信息

    1 简介 为了更好的版本控制和问题定位,我们需要知道正在运行的应用是什么版本,什么时候打包的,Git的相关信息等.通过/actuator/info可以帮助我们获取这些信息. 2 配置 首先要有actu ...

  3. vue小技巧-vue引入样式、修改难以修改的子组件内部标签样式

  4. odoo中的字段创建后,不可以编辑

  5. 垃圾收集器必问系列—CMS

    本文已收录至Github,推荐阅读 Java随想录 微信公众号:Java随想录 CSDN: 码农BookSea 应该相信,自己是生活的战胜者.--雨果 目录 CMS简介 运作过程 CMS的缺陷 处理器 ...

  6. python处理apiDoc转swagger

    python处理apiDoc转swagger 需要转换的接口 现在我需要转换的接口全是nodejs写的数据,而且均为post传输的json格式接口 apiDoc格式 apiDoc代码中的格式如下: / ...

  7. Java 进阶P-4.8+P-4.9

    Object类 Object类的函数 toString() equals() Java Object 类是所有类的父类,也就是说 Java 的所有类都继承了 Object,子类可以使用 Object ...

  8. C#实现聊天消息渲染、图文混排(支持Windows、Linux)

    在实现聊天软件时,渲染文字表情图文混排是一项非常繁琐的工作,再加上还要支持GIF动图.引用消息.撤回消息.名片等不同样式的消息渲染时,就更加麻烦了. 好在我们可以使用 ESFramework 提供的 ...

  9. 12月5日内容总结——JS基础知识及变量常量、基本数据类型、运算符、流程控制、函数、内置对象

    目录 一.JS简介 简介 ECMAScript的历史 二.JS基础 1.注释语法 2.引入js的多种方式 3.结束符号 三.变量与常量 编写和运行js代码的两种方式 变量声明 四.基本数据类型 1.数 ...

  10. 环形链表I、II(含代码以及证明)

    环形链表 解题思路 定义两个指针,一个快指针,一个慢指针,快指针每次移动两个节点,慢指针每次移动一个节点. 从头节点开始,让快慢指针同时移动,如果链表中有环,那么快慢指针一定会在某个节点相遇. 如果快 ...