iT邦幫忙

2018 iT 邦幫忙鐵人賽
DAY 9
2

CSS也能做動畫?
沒錯,CSS也能做動畫!

在看到CSS繪圖之後我在同樣的Pen裡頭又看到了會動的簡單小動畫又激起我的好奇心!
然後我就去Google了

要用CSS做動畫需要
@keysframe & animation

@keysframe的功能是控制動畫效果
可以用百分比來表示,也可以使用from、to
0%和from都表示動畫開頭,100%和to都表示動畫結束

animation則是控制動畫何時開始、結束

animation-name //動畫名稱
animation-duration //動畫週期、秒數
animation-timing-function //速度曲線
animation-delay //動畫何時開始
animation-iteration-count //動畫播放次數
animation-direction //下個週期是否逆向播放
animation-play-state //動畫是否正在運行或暫停

就來做做看顏色變化吧!
一樣先把HTML寫好

<div class="box skin"></div>

我們先在skin上面設定預設的樣式
接著在@keyframes 替動畫命名還有動畫的效果
因為我想要讓顏色慢慢變化因此在50%與100%的時候變換顏色
然後在.box上要套用的animation名稱跟播放秒數就可以看見效果了!

@keyframes color {
    50% {
        background: pink;
    }
    100% {
        background: White;
    }
}

.skin {
    width: 100px;
    height: 100px;
    background: red;
}

.box {
    animation-name: color;
    animation-duration: 5s;
  
}

以上,因為沒有玩得很深入
不過這個真的很有趣,平常都以為動畫效果一定只能靠JS呈現
原來CSS這麼好玩!


上一篇
Day08::我所知道的 CSS Grid Layout
下一篇
Day10::我所知道的 CSS重構 第一章重構與架構
系列文
三十哩路,我的前端學習路程30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言