动效篇(2)--CSS极简动效鉴赏与制作(良心制作~)

(一)动效鉴赏

BY Jack Oliver
BY Siyoung Park
BY Scott Galloway
BY Elena

(二)动效制作与详解(详解见代码块中的注释!!!)

动效作品相机(最终效果)

1.搭建基本形状

(代码如下)
body{
    background-color:#343C4C;min-width: 800px;min-height:400px;
}
/*定义背景颜色和最小宽高*/
.flat-anim{
    display:block; position:absolute; width:264px; height:265px; 
    background:#6FDABB; border-radius:42px; top:50%; left:50%; 
    margin:-132px 0 0 -132px;
    -webkit-box-shadow:      
         0 12px 0 -6px rgba(0,0,0,0.2); 
}
/*display:block; 让对象成为块级元素,一般都是用display:none和display:block来控制层的显示。
position:absolute;绝对定位,是将div的位置固定的,也就是用浏览器的绝对位置的显示div,
border-radius圆角半径,-webkit-box-shadow:对象的阴影设置(相机镜头的同心圆都是用阴影来写的)*/
.flat-anim:before{ 
    content:""; background-color:#282e3a; width:26px; height:26px; 
    border-radius:26px; position:absolute; top:20px; left:20px;
    -webkit-box-shadow:
         0 0 0 2px #1A4B46,
         0 0 0 4px #282e3a,
         0 6px 0 6px rgba(0,0,0,0);
}
/*content:"";插入内容,不写这句话,整个代码块是不会起作用的。*/
.flat-anim:after{ 
    content:""; 
    background-color:#C72E31; width:44px; height:20px; 
    border-radius:8px; position:absolute; 
    top:20px; right:24px;
}
.eye{ 
    width:38px; height:38px; border-radius:38px; 
    background:#1E3E3C; display:block; margin:60px auto ; 
    z-index:20; position: relative; 
    -webkit-box-shadow: 
         0 0 0 22px #1A4B46,
         0 0 0 30px #1E3E3C, 
         0 0 0 45px #ecf0f1,
         0 10px 0 45px rgba(0,0,0,0.2);
}
.eye:before{
    content:"";
    background:#568E7C;width:30px;height:30px;
    border-radius:30px;position:absolute;
    top:-16px;left:-16px;
}
.eye:after{
    content:'';background:#266C67;
    width:16px;height:16px;position:absolute; 
    top:30px; left:30px; border-radius:16px;
}

.bottom{
    width:264px; height:112px; display:block; 
    position:absolute; z-index:10; 
    background:#D94C4E; border-radius: 0 0 38px 38px; 
    bottom:0; left:0; border-top:15px solid #C72E31;
}
.bottom:before{
    content:"";display:block;background:#282e3a;
    width:140px;height:30px;margin:14px auto;

}
.bottom:after{
    content:""; position:absolute; 
    top:30px; left:84px; 
    width:96px; height:70px; 
    display:block; background: #ecf0f1;
    border-top:8px solid #c3d1dd;
    border-bottom:14px solid #C72E31;

}

2.制作上半部镜头动画

(代码如下)
.eye,
.flat-anim:before,
.flat-anim:after {
    -webkit-animation: eyeAnimation 5s infinite;
}

.flat-anim:before{
    -webkit-animation-delay: 50ms;
    -moz-animation-delay: 50ms;
    -o-animation-delay: 50ms;
    animation-delay: 50ms;
}
/*animation-delay动画延迟,-moz-(Firefox浏览器) ,-o(Opera浏览器),-webkit(Safari 和 Chrome浏览器)是为了浏览器的兼容,所以一定要写全。*/
.flat-anim:after{
    -webkit-animation-delay: 150ms;
    -moz-animation-delay: 150ms;
    -o-animation-delay: 150ms;
    animation-delay: 150ms;
}
@-webkit-keyframes eyeAnimation{
    0%{ opacity:0; -webkit-transform:scale(0.1);}
    12%{ opacity:0; -webkit-transform:scale(0.1);}
    13%{ opacity:1; -webkit-transform:scale(0.1);}
    20%{ opacity:1; -webkit-transform:scale(1.4);}
    25%{ -webkit-transform:scale(1);}
    95%{ opacity:1; -webkit-transform:scale(1);}
    100%{ opacity:0; -webkit-transform:scale(0.1);}
}
/*@-webkit-keyframes关键帧动画,通过关键帧动画来制作镜头的动效*/

3.制作相机出照片的效果

(代码如下)
.bottom:before{
    -webkit-animation: bottomAnimation 5s infinite;
}
@-webkit-keyframes bottomAnimation{
    0%{ opacity:0; width:0;}
    21%{ opacity:0; width:0;}
    22%{ opacity:1; width:8px;}
    25%{ opacity:1; width:165px;}
    26%{ opacity:1; width:140px;}
    95%{ opacity:1; width:140px;}
    96%{ opacity:0; width:0;}
    100%{ opacity:0; width:0;}      
}

.bottom:after{
    -webkit-animation:bottomAfterAnimation 5s infinite;
}
@-webkit-keyframes bottomAfterAnimation{
    0%{ opacity:0; height:0; border:0;}
    25%{ opacity:0; height:0; border:0;}
    26%{ opacity:1; height:0; border:0;}
    26%{ opacity:1; height:0; border:2;}
    28%{ opacity:1; height:0; border-top-width:16px;}
    28%{ opacity:1; height:40px; border-top-width:16px;border-bottom-width:14px;}
    95%{ opacity:1; height:40px; border-top-width:16px;border-bottom-width:14px;}
    100%{ opacity:0; height:0; border:0;}   
}

4.整体加入旋转动画

(代码如下)
.flat-anim{
    -webkit-animation: flatAnimation 5s infinite;
}
@-webkit-keyframes flatAnimation{
    0%{-webkit-transform: rotate(50deg) scale(0.5);}
    13%{-webkit-transform: rotate(360deg) scale(1.2);}
    20%{-webkit-transform: rotate(360deg) scale(1);}
    95%{-webkit-transform: rotate(360deg) scale(1);}
    100%{-webkit-transform: rotate(410deg) scale(.5);}
}
/*小技巧:尽量把可以写在一起的代码合并,养成良好的习惯,如果动效复杂就注释起来,一部分一部分做*/

5.HTML代码

<div class="flat-anim animation">
    <span class="eye"></span>
    <span class="bottom"></span>
</div>

结束(下期更精彩哟~~~)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,569评论 4 363
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,499评论 1 294
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,271评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,087评论 0 209
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,474评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,670评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,911评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,636评论 0 202
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,397评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,607评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,093评论 1 261
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,418评论 2 254
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,074评论 3 237
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,092评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,865评论 0 196
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,726评论 2 276
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,627评论 2 270

推荐阅读更多精彩内容