这篇文章主要介绍了使用CSS3设计地图上的雷达定位提示效果的实例,即文中所说的水波涟漪效果,能够控制宽高和透明度,需要的朋友可以参考下
近期工作要做一个用于图像定位的标识,为了让这个指示标识不死板,决定做个简单的动画,动画效果像波浪一样波动,这样标识就更美观好看了,喜欢的同学可以跟着来学,十分简单,欢迎指正交流。
先上效果图:
201645110412546.gif
本动画需要用到的主要属性:animation, transition 和 Keyframes 属性 Step 1:HTML 代码:
XML/HTML Code复制内容到剪贴板
- <div class="example">
- <div class="dot"></div>
- </div>
Step 2: CSS样式:设置animation属性
CSS Code复制内容到剪贴板
- .dot:before{
- content:' ';
- position: absolute;
- z-index:2;
- left:0;
- top:0;
- width:10px;
- height:10px;
- background-color: #ff4200;
- border-radius: 50%;
- }
-
- .dot:after {
- content:' ';
- position: absolute;
- z-index:1;
- width:10px;
- height:10px;
- background-color: #ff4200;
- border-radius: 50%;
- box-shadow: 0 0 10px rgba(0,0,0,.3) inset;
- -webkit-animation-name:'ripple';/*动画属性名,也就是我们前面keyframes定义的动画名*/
- -webkit-animation-duration: 1s;/*动画持续时间*/
- -webkit-animation-timing-function: ease; /*动画频率,和transition-timing-function是一样的*/
- -webkit-animation-delay: 0s;/*动画延迟时间*/
- -webkit-animation-iteration-count: infinite;/*定义循环资料,infinite为无限次*/
- -webkit-animation-direction: normal;/*定义动画方式*/
- }
设置动画方式,像波浪一样,从小变大变无,所以我们要设置宽高从0 – 50px,透明度从有至无,这样就能实现水波涟漪效果啦。
CSS Code复制内容到剪贴板
- @keyframes ripple {
- 0% {
- left:5px;
- top:5px;
- opcity:75;
- width:0;
- height:0;
- }
- 100% {
- left:-20px;
- top:-20px;
- opacity: 0;
- width:50px;
- height:50px;
- }
- }
效果完成了,此案例比较适合图像定位标识用,当然还可以有更好的方案去代替,完善这个样式与动画效果。 |