本篇文章是上一篇讲box-shadow基础知识的延伸,建议先花几分钟阅读那篇文章,点击阅读,再来看这篇。

除了box-shadow属性知识外,制作动画,还需要对CSS3的animation, @keyframes制作动画有所了解。

接下来,还是那张图。。

基本思路如下:

1.写好一个div,<div class="circle"></div>

2.利用border-radius,把它变成一个圆

3.给它添加after伪类,伪类也是一个一样大小的圆(不设置背景色),跟当前的圆重叠在一起

4.鼠标移入的时候,给伪类添加animation动画

5.动画包括,opacity的变化,添加层叠阴影(关键),伪类放大2倍,就做好了我们要的效果了。

感叹一下,CSS的伪类真是厉害~~好多情况下可以使用

代码如下

<div class="circle"></div> 
body {
margin:;
padding:;
background:black;
}
.circle{
width:50px;
height:50px;
border-radius:50%;
background-color:#f50ad5;
margin:80px;
}
.circle:after{
content:'';
display:block;
left:;
top:;
width:50px;
height:50px;
border-radius:50%;
} .circle:hover:after{ /*鼠标入的时候,伪类元素的动画开始,动画名称就是下面@keyframes定义的circle*/
animation: circle 1.3s ease-out 75ms;
} @keyframes circle{
0% {
opacity: 0.4;
}
40% {
opacity: 0.7;
box-shadow: 0 0 0 2px rgba(255,255,255,0.3), 0 0 10px 10px black, 0 0 0 10px rgba(255,255,255,0.8); /*三层阴影*/
}
100% {
box-shadow: 0 0 0 2px rgba(255,255,255,0.3), 0 0 10px 10px black, 0 0 0 10px rgba(255,255,255,0.8);
transform: scale(2); /*放大两倍*/
opacity:;
}
}

第二张图实现起来就更简单了

直接添加添加动画,放大阴影尺寸即可,代码如下

<button class="button">点击</button> 
  body {
margin:;
padding:;
background:black;
}
.button{
width:50px;
height:35px;
color:#f50ad5;
border:2px solid #f50ad5;
background-color:black;
margin:80px;
}
.button:hover{ /*鼠标移入的时候,动画开始*/
animation: shine 0.4s linear;
}
@keyframes shine{
0%{
box-shadow:0 0 0px 0px rgba(245, 10, 213,0.9);
}
100%{
box-shadow:0 0 0px 25px rgba(245, 10, 213,0);
}
}

看似炫酷的动画,就这么简单做出来了,发挥想象力,还可以做出更有趣的动画哦。

码字不易,觉得有帮助,请给个赞吧~

另外,文章为原创,如需转载,请注明出处,谢谢!

CSS3 的box-shadow进阶之 - 动画篇 - 制作辐射动画的更多相关文章

  1. iOS开发--动画篇之layout动画深入

    "不得不说,单单是文章的标题,可能不足以说明本文的内容.因此,在继续讲述约束动画之前,我先放上本文要实现的动画效果." 编辑:Bison投稿:Sindri的小巢 约束动画并不是非常 ...

  2. iOS动画篇:核心动画

    转:http://www.cocoachina.com/ios/20160517/16290.html 基本概念 1.什么是核心动画 Core Animation(核心动画)是一组功能强大.效果华丽的 ...

  3. iOS动画篇:UIView动画

    iOS的动画效果一直都很棒很,给人的感觉就是很炫酷很流畅,起到增强用户体验的作用.在APP开发中实现动画效果有很多种方式,对于简单的应用场景,我们可以使用UIKit提供的动画来实现. UIView动画 ...

  4. ReactNative入门 —— 动画篇(上)

    在不使用任何RN动画相关API的时候,我们会想到一种非常粗暴的方式来实现我们希望的动画效果——通过修改state来不断得改变视图上的样式. 我们来个简单的示例: var AwesomeProject ...

  5. 前端性能优化(css动画篇)

    正巧看到在送书,于是乎找了找自己博客上记录过的一些东西来及其无耻的蹭书了~~~ 小广告:更多内容可以看我的博客 最近拜读了一下html5rocks上几位大神写的一篇关于CSS3动画性能优化的文章,学到 ...

  6. css3制作旋转动画

    现在的css3真是强大,之前很多动画都是用jq来实现,但是css3制作的动画要比jq实现起来简单很多,今天呢,我自己也写了一个css旋转动画和大家分享.效果如下面的图片 思路:1.制作之前呢,我们先来 ...

  7. 【译】SQL Server索引进阶第八篇:唯一索引

    原文:[译]SQL Server索引进阶第八篇:唯一索引     索引设计是数据库设计中比较重要的一个环节,对数据库的性能其中至关重要的作用,但是索引的设计却又不是那么容易的事情,性能也不是那么轻易就 ...

  8. 3D Grid Effect – 使用 CSS3 制作网格动画效果

    今天我们想与大家分享一个小的动画概念.这个梦幻般的效果是在马库斯·埃克特的原型应用程序里发现的​​.实现的基本思路是对网格项目进行 3D 旋转,扩展成全屏,并呈现内容.我们试图模仿应用程序的行为,因此 ...

  9. [转]ANDROID L——Material Design详解(动画篇)

    转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! 转自:http://blog.csdn.net/a396901990/article/de ...

随机推荐

  1. spring mvc 形参类型

    spring mvc 形参类型 1 没有占位符号的,形参的名字为参数的名称 请求路径为:organtrans/t1/t5?a=1(a为形参的的名称必须一致) @RequestMapping(" ...

  2. 大整数加法 HDU1002

    今天早上没事干又把这个敲了一遍,虽然手冻得不行,不过又深入理解理解还可以哈. 难点就在给你的整数可能很大很长,所以long long 肯定不行,得用字符串来读取存储,然后注意一下相加的时候进位,最后输 ...

  3. leecode第五十三题(最大子序和)

    class Solution { public: int maxSubArray(vector<int>& nums) { int len=nums.size(); )//特殊情况 ...

  4. Codeforces 1079 E - The Unbearable Lightness of Weights

    E - The Unbearable Lightness of Weights 思路: 分组背包dp 每组最多只能选一个 一些优化可以快很多 代码: #pragma GCC optimize(2) # ...

  5. echart 注意事项-初始化和销毁

    net5x 博客园 首页 新随笔 联系 管理 订阅 随笔- 21  文章- 186  评论- 4  ECharts图表初级入门(三):ECharts对象的数据实例化方法汇总以及注意事项   [摘要]: ...

  6. google浏览器如何导出书签

     首先打开浏览器点右侧的自定义及控制Google chrome.  点击书签-书签管理器   打开书签管理器界面中·   点击书签管理器的整理  最下面的将书签导出到html文件..  弹出另存为对话 ...

  7. HeadFIrst Ruby 第六章总结 block return values

    前言 这一章通过抽取一个文件中的确定的单词的项目进行讲解,主要包括了: File 的打开.阅读与关闭 find_all & refuse方法的相关内容 map 方法的相关内容这章的核心是:关于 ...

  8. RLE Plots: relative log expression

    RLE Plots: Visualising Unwanted Variation in High Dimensional Data 参考:RLE Plots: Visualising Unwante ...

  9. java学习进度

    上周日玩的比较high,忘记写进度报告,今天补上.通过这些天的学习,我对java有了初步的认识,java和c有很多的不同和相同之处,然后就是java的代码在记事本里写,等慢慢深入之后又可以用eclip ...

  10. Watering Grass UVA - 10382

    喷水装置的圆心和半径确定,就能确定左端和右端.开始时pos=0,选取左端小于pos,右端最大的更新pos. #include <iostream> #include <cstdio& ...