CSS3動(dòng)畫延時(shí)的一點(diǎn)疑問
問題描述
大體意思是我想讓content2延時(shí)2s再向上淡入,但我設(shè)置了延時(shí)時(shí)間2s后,這樣卻導(dǎo)致一開始content2直接顯示了,2s后再進(jìn)行淡入的動(dòng)畫,能否讓它一開始隱藏,2s后再淡入?PS:想用純CSS3來解決
#content2 {position: absolute; left: 50%; top: 100px; width: 200px; height: 300px;background: #ccc;-webkit-animation: animations2 3s linear 2s;}@-webkit-keyframes animations2 { 0% { opacity: 0; top: 130px;} 100% {opacity: 1; top: 100px;}}
問題解答
回答1:知識(shí)點(diǎn): animation-fill-mode
http://jsfiddle.net/xtftj288/embedded/result,css,html/
回答2:CSS3 動(dòng)畫是非常蛋疼的,首先應(yīng)該要有這樣的心理準(zhǔn)備。
對(duì)于題主的情況,有兩種解決方案都可以。
第一,再寫一個(gè)設(shè)置 #content2 透明度為 0 的動(dòng)畫,時(shí)長(zhǎng) 2s,剛好掩蓋掉 animations2 的 2s 延時(shí),讓它們?cè)?#content2 上同時(shí)播放。
第二,修改 animations2,不要延時(shí) 2s,而把這 2s 放到 keyframes 里面作為動(dòng)畫的一部分。在題目里面,可以把整個(gè)動(dòng)畫看成 5s,0%, 40% { opacity: 0; top: 130px; },100% 部分不變,效果和延時(shí)是一樣的。
回答3:不是標(biāo)準(zhǔn)蛋疼,而是動(dòng)畫延遲不是這麼用的。
延遲就是延遲,延遲的時(shí)候動(dòng)畫沒有開始。動(dòng)畫沒有開始的時(shí)候什麼樣子,取決於其它 CSS 的定義。
但是,題主看你這架勢(shì)不是用動(dòng)畫的啊,應(yīng)該是用 transition 纔對(duì)。
不過你要是只想做一個(gè)出場(chǎng)動(dòng)畫,那動(dòng)畫就應(yīng)當(dāng)從頁(yè)面加載就開始執(zhí)行,至於具體怎麼個(gè)運(yùn)動(dòng),比如速度之類的,應(yīng)當(dāng)歸到動(dòng)畫裏面。
或者,用 animation-fill-mode,指定了動(dòng)畫前後要應(yīng)用的樣式。
回答4:以上回答的顯得很蛋疼!
直接指定
#content2{opacity:0;-webkit-animation: animations2 3s linear 2s 1 forwards;}
相關(guān)文章:
1. 怎么在網(wǎng)頁(yè)中設(shè)置圖片進(jìn)行左右滑動(dòng)2. node.js - mysql如何通過knex查詢今天和七天內(nèi)的匯總數(shù)據(jù)3. mysql 插入數(shù)值到特定的列一直失敗4. mysql 怎么做到update只更新一行數(shù)據(jù)?5. python - 在使用Pycharm時(shí)經(jīng)常看到如下的樣式,小括號(hào)里紅色的部分是什么意思呢?6. javascript - 新浪微博網(wǎng)頁(yè)版的字?jǐn)?shù)限制是怎么做的7. python2.7 - python 函數(shù)或者類 代碼的執(zhí)行順序8. 360瀏覽器與IE瀏覽器有何區(qū)別???9. javascript - 用jsonp抓取qq音樂總是說回調(diào)函數(shù)沒有定義10. sublime可以用其他編譯器替換嗎?
