首页 web前端 H5教程 用HTML和CSS实现WWDC 2015上的动画效果

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

May 17, 2016 am 09:07 AM
css html wwdc

  每年,苹果都会召开一次重大的会议。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和内容

 

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

 

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

 

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

 

  写圆和方块样式

 

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


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

 

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

 

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


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

 

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

 

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

 

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


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

 

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

 

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

 

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


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

 

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

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

 

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

 

  小方块

 

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

 

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

 

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

 

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


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

 

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


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

 

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

 

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

 

  内容方块

 

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


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

 

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


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

 

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

 

  添加动画

 

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

 

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


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

 

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


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

 

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

 

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


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

 

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

 

  keyframes 如下所示


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

 

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

 

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

 

  重用CSS

 

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

 

  前缀

 

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

 

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


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

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

HTML,CSS和JavaScript的角色:核心职责 HTML,CSS和JavaScript的角色:核心职责 Apr 08, 2025 pm 07:05 PM

HTML定义网页结构,CSS负责样式和布局,JavaScript赋予动态交互。三者在网页开发中各司其职,共同构建丰富多彩的网站。

vue中怎么用bootstrap vue中怎么用bootstrap Apr 07, 2025 pm 11:33 PM

在 Vue.js 中使用 Bootstrap 分为五个步骤:安装 Bootstrap。在 main.js 中导入 Bootstrap。直接在模板中使用 Bootstrap 组件。可选:自定义样式。可选:使用插件。

bootstrap怎么写分割线 bootstrap怎么写分割线 Apr 07, 2025 pm 03:12 PM

创建 Bootstrap 分割线有两种方法:使用 标签,可创建水平分割线。使用 CSS border 属性,可创建自定义样式的分割线。

了解HTML,CSS和JavaScript:初学者指南 了解HTML,CSS和JavaScript:初学者指南 Apr 12, 2025 am 12:02 AM

WebDevelovermentReliesonHtml,CSS和JavaScript:1)HTMLStructuresContent,2)CSSStyleSIT和3)JavaScriptAddSstractivity,形成thebasisofmodernWebemodernWebExexperiences。

bootstrap按钮怎么用 bootstrap按钮怎么用 Apr 07, 2025 pm 03:09 PM

如何使用 Bootstrap 按钮?引入 Bootstrap CSS创建按钮元素并添加 Bootstrap 按钮类添加按钮文本

bootstrap怎么调整大小 bootstrap怎么调整大小 Apr 07, 2025 pm 03:18 PM

要调整 Bootstrap 中元素大小,可以使用尺寸类,具体包括:调整宽度:.col-、.w-、.mw-调整高度:.h-、.min-h-、.max-h-

React在HTML中的作用:增强用户体验 React在HTML中的作用:增强用户体验 Apr 09, 2025 am 12:11 AM

React通过JSX与HTML结合,提升用户体验。1)JSX嵌入HTML,使开发更直观。2)虚拟DOM机制优化性能,减少DOM操作。3)组件化管理UI,提高可维护性。4)状态管理和事件处理增强交互性。

bootstrap怎么设置框架 bootstrap怎么设置框架 Apr 07, 2025 pm 03:27 PM

要设置 Bootstrap 框架,需要按照以下步骤:1. 通过 CDN 引用 Bootstrap 文件;2. 下载文件并将其托管在自己的服务器上;3. 在 HTML 中包含 Bootstrap 文件;4. 根据需要编译 Sass/Less;5. 导入定制文件(可选)。设置完成后,即可使用 Bootstrap 的网格系统、组件和样式创建响应式网站和应用程序。

See all articles