0

0

用HTML和CSS实现WWDC 2015上的动画效果

PHP中文网

PHP中文网

发布时间:2016-05-17 09:07:12

|

1808人浏览过

|

来源于php中文网

原创

  每年,苹果都会召开一次重大的会议。wwdc(苹果开发者大会)是ios开发者和osx开发者学习苹果先进高科技和移动设备与桌面软件新概念的好机会。

 

  每一年的这个时候,他们都会制造出很多新创意,今年,我被一个用简单圆圈和形状制作出来的图标所惊艳,于是我决定用HTML和CSS来实现它。

 

  WWDC 15邀请卡

立即学习前端免费学习笔记(深入)”;

 

  苹果的图标通常都会使用颜色和形状的叠加,比如iOS 7 Photos图标。今年WWDC邀请函用了下面这货。

 

 

用HTML和CSS实现WWDC 2015上的动画效果

 

  它由一些列层叠和半透明的形状构成,非常适合用HTML和CSS来实现。

 

  HTML

 

  设计这样一块负责的东西需要稍微分析一下。首先,我把它分解成各个部分。 大方向看它是由三种形状构成的,主要图形为8个大圆,我先把它们列出来:

 

用HTML和CSS实现WWDC 2015上的动画效果

 

  这里我分割成几个类,这样做方便后面把large,circle,等类提取出来单独写,代码会整洁很多。

 

  然后我们有八个小形状,处于大圆的上边,这些形状由4个圆形和4个方形构成,方形是由圆角的,我这样写HTML

 

用HTML和CSS实现WWDC 2015上的动画效果

 

  我用了circle,squircle以及数字1到8来为各个p设置类名,这样做的好处是,后面为它们设置形状和颜色的时候很方便。

 

  最后我们把两个大方形反倒logo中间。

 

用HTML和CSS实现WWDC 2015上的动画效果

 

  同样,我用了large和squircle。

 

  Logo和内容

 

  接下来我们给中间的方形增添点内容。

 

24.png

 

  这里我们用了一个SVG图片,还有邀请函的内容。邀请函的字体为San Francisco 但是字体不是OSX标准的,所以这里我换成Helvetica Neue Light。

 

  写圆和方块样式

 

  我要做的第一件事是把circle和squircle的样式写好。


25.png

 

  大部分形状是大得,所以这我把默认值设大了。每个元素的定位都是absolute并且有一个白的边框。边框可能不会跟邀请函的一模一样,但是可以给形状多点光泽。

 

  接下来我们给大圆加上样式,设置border-radius为50%,并且使用left,top值设置位置。


26.png

 

  这个时候所有的圆都是在同一个位置上边。我们使用点小技巧,通过transform-origin的值来改变位置。默认的transform-origin值为(50%,50%),这里我们把值设为圆的底部,然后我们稍微旋转一下,形状就出来了。

 

用HTML和CSS实现WWDC 2015上的动画效果

 

  让我们给每个圆添加CSS样式,仔细研究邀请函的图片,我们可以看到一个圆的位置在左下角。知道了这一点,我们就可以写出其他与圆圈的旋转角度。


28.png

 

  每个块都有一个颜色,并且旋转一定角度。下面的动画动态展示了生成过程。

 

用HTML和CSS实现WWDC 2015上的动画效果

 

  有了上面这些原型,我们给其他形状写样式。首先方形也可以看成有不同圆角的圆。


30.png

 

  当我们定位了圆以后,我们给了特定的旋转角度和颜色。高兴的是,相同的形状也可以使用相同的样式,我们写好小形状的样式。

1160.png

 

  我们把这些形状设得小一些,并且离中心更远的距离。并且使用跟上面相同的诡计。

Asp开源商城系统YothSHOP
Asp开源商城系统YothSHOP

YothSHOP是优斯科技鼎力打造的一款asp开源商城系统,支持access和Sql server切换,完善的会员订单管理,全站生成静态html文件,SEO优化效果极佳,后台XP模式和普通模式随意切换,极易操作,欢迎使用! Asp开源商城系统YothSHOP功能介绍:1.使用静态页和程序页分离技术,网站可自由开启和关闭,实现全站生成静态页,可动静态切换,方便二次开发和后期维护。2.管理员管理:后台

下载

 

  小方块

 

  小的方形角度错了,我们需要给它旋转45deg。

 

用HTML和CSS实现WWDC 2015上的动画效果

 

  这里有两种方法可供选择,我们可以给每个方形加多一个额外的元素,并旋转,或者我们选择CSS中的伪类。两种方法都行,不过我更倾向于后者。

 

  首先我们把背景颜色,边框,盒子阴影去掉。


35.png35.png

 

  我们使用::after伪类来创建一个相同的方形,并旋转45deg。


36.png

 

  现在我们有了大圆和其他小形状了。

 

用HTML和CSS实现WWDC 2015上的动画效果

 

  内容方块

 

  两个大的方形包含所有内容,我们把他们定位到中间,并且给他们一个比较深的透明色。


38.png

 

  我们可以旋转一下第一个大方形。


39.png

 

用HTML和CSS实现WWDC 2015上的动画效果

 

  添加动画

 

  最初的邀请函是静态的,但是我们的网站叫做CSS Animation Rocks可不是浪得虚名。

 

  我像把每个集合分开,为了做到这一点,我用span元素把它们分别包裹起来,后面就把动画应用到span元素上即可。


42.png

 

  我们先给span元素定位,防止他们溢出。


45.png

 

  每个span元素都定位到中点。

 

  接下来我们把动画应用到每个span元素上面。


47.png

 

  我们使用了相同的keyframes但是改变了动画时间,分别为10s,20s,30s。于是他们一分钟后回到原来的位置

 

  keyframes 如下所示


48.png

 

  开始位置旋转角度为0,最终旋转角度360deg。

 

用HTML和CSS实现WWDC 2015上的动画效果

 

  重用CSS

 

  这是个有趣的实验,但是我觉得最大的收获是重用了CSS.旋转和小形状使用相同的CSS很方便。还有所有的animation用了同一个keyframes。这样有助于压缩CSS文件的大小,保证加载速度。

 

  前缀

 

  创建这个例子的时候,我用了autoprefixer,这样就不用每次写动画都要考虑浏览器内核了。

 

以上就是用HTML和CSS实现WWDC 2015上的动画效果的内容,更多相关内容请关注PHP中文网(www.php.cn)!

相关文章

HTML速学教程(入门课程)
HTML速学教程(入门课程)

HTML怎么学习?HTML怎么入门?HTML在哪学?HTML怎么学才快?不用担心,这里为大家提供了HTML速学教程(入门课程),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
C++ 高级模板编程与元编程
C++ 高级模板编程与元编程

本专题深入讲解 C++ 中的高级模板编程与元编程技术,涵盖模板特化、SFINAE、模板递归、类型萃取、编译时常量与计算、C++17 的折叠表达式与变长模板参数等。通过多个实际示例,帮助开发者掌握 如何利用 C++ 模板机制编写高效、可扩展的通用代码,并提升代码的灵活性与性能。

10

2026.01.23

php远程文件教程合集
php远程文件教程合集

本专题整合了php远程文件相关教程,阅读专题下面的文章了解更多详细内容。

29

2026.01.22

PHP后端开发相关内容汇总
PHP后端开发相关内容汇总

本专题整合了PHP后端开发相关内容,阅读专题下面的文章了解更多详细内容。

21

2026.01.22

php会话教程合集
php会话教程合集

本专题整合了php会话教程相关合集,阅读专题下面的文章了解更多详细内容。

21

2026.01.22

宝塔PHP8.4相关教程汇总
宝塔PHP8.4相关教程汇总

本专题整合了宝塔PHP8.4相关教程,阅读专题下面的文章了解更多详细内容。

13

2026.01.22

PHP特殊符号教程合集
PHP特殊符号教程合集

本专题整合了PHP特殊符号相关处理方法,阅读专题下面的文章了解更多详细内容。

11

2026.01.22

PHP探针相关教程合集
PHP探针相关教程合集

本专题整合了PHP探针相关教程,阅读专题下面的文章了解更多详细内容。

8

2026.01.22

菜鸟裹裹入口以及教程汇总
菜鸟裹裹入口以及教程汇总

本专题整合了菜鸟裹裹入口地址及教程分享,阅读专题下面的文章了解更多详细内容。

55

2026.01.22

Golang 性能分析与pprof调优实战
Golang 性能分析与pprof调优实战

本专题系统讲解 Golang 应用的性能分析与调优方法,重点覆盖 pprof 的使用方式,包括 CPU、内存、阻塞与 goroutine 分析,火焰图解读,常见性能瓶颈定位思路,以及在真实项目中进行针对性优化的实践技巧。通过案例讲解,帮助开发者掌握 用数据驱动的方式持续提升 Go 程序性能与稳定性。

9

2026.01.22

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Bootstrap 5教程
Bootstrap 5教程

共46课时 | 3万人学习

AngularJS教程
AngularJS教程

共24课时 | 2.9万人学习

CSS教程
CSS教程

共754课时 | 22.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号