在我做公司官網的時候也會幫着寫一些游戲的靜態頁,今天產品要求為了突出一個按鈕,他要有顏色的變化而且要變大變小,然后我就在網上搜了下呼吸燈和其他的案例,寫了個小damo,看着還有些魔性嘞。
html:
<body>
<div class="color"></div>
<img class="change" src="img/dongtai.png"/>
</body>
原理是這樣的:body相對定位,.change絕對定位到.color上面,大小和.color一樣,第一次刷新先顯示.color,然后.change的透明度逐漸改變,與此同時,他們兩個的大小也同時在改變
CSS
body{
position: relative;
}
.color{width:308px;height: 174px;background-color: lightskyblue;}
.change{
position: absolute;
top: 0;
left: 0;
animation-name: mychange; /*動畫的名字*/
animation-duration: 1000ms; /*定義動畫完成一個周期所需要的時間,以秒或毫秒計*/
animation-iteration-count: infinite; /*定義動畫的播放次數,這里是無限播放*/
animation-direction: alternate; /*定義是否應該輪流反向播放動畫,這里是動畫輪流播放*/
}
.color{
animation-name: mycolor;
animation-duration: 1000ms;
animation-iteration-count: infinite;
animation-direction: alternate;
}
@keyframes mychange{ /*mychange是動畫的名字上面有用到*/
0% {
opacity: .2;
width: 308px;
height: 174px;
}
100% {
opacity: 1;
width: 358px;
height: 202px;
}
}
@keyframes mycolor{
0% {
width: 308px;
height: 174px;
}
100% {
width: 358px;
height: 202px;
}
}
.color和.change的大小都是從寬:308px,高202px -->變化到寬358px,高174px。
好啦,記錄完了,
