2014-04-01 166 views
0

基本上這是一個球。 這個球從左到右。 我希望球在屏幕中間到達時暫停,3秒後它應該淡出 我該怎麼做?css3動畫暫停在屏幕中間

div.new-goal { 
    position:absolute; 
    margin-top: 30px; 
    background-color: transparent; 
    text-align:center; 
    -webkit-animation: movein 1.0s ease-out 0s 1, moveout 2.1s ease-in 1s 1; 
    -webkit-animation-fill-mode: forwards; 
    white-space: nowrap; 
    color: $green2; 
} 

PS:這是上海社會科學院

+0

這樣的事情? http://jsfiddle.net/8B9Lx/2/到達屏幕中間時有一些閃爍的球,我認爲這是calc()的結果。 –

+0

謝謝。沒關係對我來說。請回答,以便我可以接受:) –

回答

1

HTML

<div id="ball"></div> 

CSS

body { 
    margin: 0; 
    padding: 0; 
} 

#ball { 
    width: 50px; 
    height: 50px; 
    background: green; 
    border-radius: 50%; 
    position: absolute; 
    left: -50px; 
    -webkit-animation: move 8s; 
    -webkit-animation-fill-mode: forwards; 
} 

@-webkit-keyframes move 
{ /* 
    8s : 100% = 3s : x 
    x = 37.5% 
    */ 
    37.5% { 
     left: calc(50% - 25px); opacity: 1; 
    } 
    75% { 
     left: calc(50% - 25px); opacity: 1; 
    } 
    85% { 
     left: 80%; opacity: 0; 
    } 
    100% { 
     opacity: 0; 
    } 
} 

http://jsfiddle.net/8B9Lx/3/

+1

很好的答案!您可以使用margin-left避免左邊的calc值:-25px;見http://jsfiddle.net/8B9Lx/4/ – vals

+0

@vals哦,是的!我正在考慮calc(),我完全忘記了舊的負邊距:D謝謝,這個刪除了錯誤。 –

+0

非常好,謝謝你們! –