之前我写过一篇用JavaScript和CSS3制作出光芒四射的肖像的文章,这篇文章受到了大家火热的追捧,因为只使用了很少的js代码和简单的CSS语句就创造出来神奇的效果。本文里我是想改进一下之前的技术,我想让它变的更容易,我想去掉js代码,只用CSS3来实现整个效果。

HTML代码

HTML代码结构很简单,跟之前那篇文章使用的相同:

WebHek

最外面的div作为父元素,它的position是relative,有固定的高和宽度,有两个子元素:一个用来放logo,一个用来做光芒效果的容器。

CSS代码

我们这里要用纯CSS来实现,需要使用CSS3的动画技术,这里用到的CSS语法是@keyframes。我们的基本实现原理是用keyframes,从rotate(0deg)旋转到rotate(360deg):

/* 用来实现动画的keyframes; 从0度旋转到360度 */

@keyframes spin {

from { transform: rotate(0deg); }

to { transform: rotate(360deg); }

}

/* 实现光线辐射效果 */

#raysDemoHolder{

position: relative;

width: 490px;

height: 490px;

margin: 100px 0 0 200px;

}

#raysLogo {

width: 300px;

height: 233px;

text-indent: -3000px;

background: url(logo.png) 0 0 no-repeat;

display: block;

position: absolute;

top: 0;

left: 0;

z-index: 2;

}

#rays{ /* 表现动画效果 */

background: url(rays.png) 0 0 no-repeat;

position: absolute;

top: -100px;

left: -100px;

width: 490px;

height: 490px;

/* microsoft ie */

animation-name: spin;

animation-duration: 40000ms; /* 40 seconds */

animation-iteration-count: infinite;

animation-timing-function: linear;

}

#rays:hover {

/* animation-duration: 10000ms;*/

/* 10 seconds - speed it up on hover! */

/* resets the position though! sucks */

}

通过使用animation-timing-function, animation-duration, 和 animation-iteration-count,我们就能实现线性匀速、旋转不停的动画效果!你会发现使用纯CSS制作的动画比用js制作的动画要顺滑的多。

现在我们有了一个问题,早期的Opera浏览器不支持@keyframes语法。幸运的是,我们可以通过其它方法实现这个动画:

/* boooo opera */

-o-transition: rotate(3600deg); /* 可用 */

只需要简单的一段代码。而对于IE浏览器,我试图用-ms-transform / -ms-translation在IE9里运行它,但不好用。从IE10才开始支持keyframes语法。

不断的改进自己之前的代码是个好习惯。虽然这个纯CSS实现的动画并不能在IE9里正确的运行,但IE10+,火狐,谷歌浏览器里都工作的非常好。如果必须要支持IE9,你仍然可以使用CSS条件判断语法和JavaScript配合实现js版的效果。

html头像动画,纯CSS3实现光芒旋转四射的头像动画相关推荐

  1. html5鼠标滑过图片 图片弹出层,纯CSS3鼠标滑过图片遮罩层动画特效

    简要教程 这是一款使用纯CSS3制作的鼠标滑过图片遮罩层动画特效.该特效中,当鼠标滑过或悬停在图片上面时,会在图片上出现遮罩层动画,展示出图片的描述信息和链接图标按钮. 使用方法 在页面中引入boot ...

  2. 用html浮雕效果图,纯CSS3炫酷3D浮雕质感文字动画特效

    这是一款效果非常酷的纯CSS3 3D浮雕质感文字动画特效.该特效中文字被制作为浮雕文字,就像是从一块石板上将文字雕刻下来的一样.而且文字还会来回的摆动旋转,效果非常好. 制作方法 HTML结构 该CS ...

  3. html5 鼠标旋转动画效果,CSS3鼠标滑过图片3D翻转动画特效

    这是一款效果非常炫酷的CSS3鼠标滑过图片3D翻转动画特效.该特效基于Bootstrap网格系统来布局,通过简单的CSS3代码,在鼠标滑过图片时对图片进行3D翻转,效果非常的酷. 使用方法 HTML结 ...

  4. 炫酷html动画,纯CSS3一个炫酷动画

    纯CSS3一个炫酷动画 通过下边的代码可以看到这个例子的html代码还是很简单的,中间类似图标的部分是通过给两个 围绕盒子爬的虫子通过给 HTML代码 CSS代码 body{ margin: 0; b ...

  5. html鼠标移入显示图片动画,HTML5+CSS3鼠标移入移出图片生成随机动画_html/css_WEB-ITnose...

    今天分享使用html+css3+少量jquery实现鼠标移入移出图片生成随机动画,我们先看最终效果图(截图为静态效果,做出来可是动态的哟) 左右旋转 上下移动 缩放 由于时间关系我就不一步步解析各段代 ...

  6. js操作设置css动画,使用 CSS3 和 JavaScript 制作链接反转 3D 动画 - 文章教程

    使用 CSS3 和 JavaScript 制作链接反转 3D 动画,CSS 和 JavaScript 技巧用来创建顶层的悬浮效果,使用 transfomr-origin 和 transform-sty ...

  7. java3D实现空间立方体,纯CSS3实现一个旋转的3D立方体盒子

    简单介绍 上网易前端微专业课程,里面有一个课外作业是实现一个3D旋转立方体.花了点时间做了下.还有点意思.写个简单教程.供大家学习. 先放上终于要实现的效果 注:代码在chrome 43.0.2357 ...

  8. html5水滴动画,纯css3水滴元素动画特效

    css3 animation属性绘制水滴落下波纹动画,网页水滴元素动画特效. 使用方法: 1.head引入css文件 body { background-color: #3498DB; overflo ...

  9. html 浇水动画,纯CSS3实现动画插件spinkit

    spinkit使用CSS3的特性实现多种动画效果,元素移动.放大缩小.翻转.进度条加载效果等等,使用了很多CSS3新的特性,是一个学习CSS3不错的网站. .spinner { width: 30px ...

最新文章

  1. 基于局部表面特征在杂乱场景中的三维物体识别
  2. 下载到FPGA内的文件格式
  3. pytorch 反卷积 可视化_手推反卷积
  4. [业界资讯]Window7下的IE8新漏洞KB973874成功修复
  5. Python uuid 介绍
  6. 详解Java中Map用法
  7. [Linux] 进程间通信
  8. 鸿蒙有安卓内核吗,华为鸿蒙2.0可以替代安卓吗,华为鸿蒙2.0优势在哪
  9. 流之过滤器流(将过滤器串链在一起)
  10. wsl使用可视化界面_WSL 科学计算〇 | 适合计算化学的环境配置
  11. Android游戏开发中使用Libgdx引擎遇到的问题及解决办法汇总
  12. 刘意 java基础视频_传智播客 2015年 刘意_Java基础视频-深入浅出精华版 笔记(day21~day23)(2016年4月8日13:28:21)...
  13. Java实现List集合去重的5种方式
  14. Python英文搜索引擎(模糊搜索)
  15. 今天去西安易朴通讯有限公司实习
  16. OpenFoam | 全面解析sprayFoam | 一、对象parcels属于哪个类
  17. Mask to Polygons mask转Polygons并展示
  18. 安装sql 2008 express 企业管理器Management Studio
  19. CSS初级教程(颜色、注释、选择器)【第一天】
  20. 【js】异步方法同步化

热门文章

  1. 前端根据身份证自动获取性别和出生日期
  2. 企业版微信公众号从零开始之四(申请自定义模板消息)
  3. 成就DBA的职业生涯
  4. 5注21选5升序彩票
  5. 五种食物能给你增加免疫力
  6. Java项目:生鲜商城系统(java+JSP+bootstrap+servlet+Mysql)
  7. 伽马分布,指数分布,卡方分布三者关系
  8. db2 删除索引_宿迁seo推广课程,搜索引擎优化_上海持硕信息技术有限公司
  9. python机器学习数据建模与分析——决策树详解及可视化案例
  10. selenium篇之半自动发帖机