簡短教學
這是一款使用純CSS3製作的逼真汽車運動動畫特效。在這個特效中,所有元素都是透過CSS渲染得到的,沒有使用任何圖片。它透過公路斑馬線的左右晃動來製作出汽車運動的視覺效果。
使用方法
HTML結構
整個汽車運動動畫的HTML結構如下:
<div class="car"> <div class="body"> <div class="mirror-wrap"> <div class="mirror-inner"> <div class="mirror"> <div class="shine"></div> </div> </div> </div> <div class="middle"> <div class="top"> <div class="line"></div> </div> <div class="bottom"> <div class="lights"> <div class="line"></div> </div> </div> </div> <div class="bumper"> <div class="top"></div> <div class="middle" data-numb="..."></div> <div class="bottom"></div> </div> </div> <div class="tyres"> <div class="tyre back"></div> <div class="tyre front"></div> </div> </div> <div class="road-wrap"> <div class="road"> <div class="lane-wrap"> <div class="lane"> <div></div> <div></div> <div></div> <div></div> <div></div> <div></div> <div></div> <div></div> <div></div> <div></div> <div></div> </div> </div> </div> </div>
CSS樣式
:CSS:中主要透過各個汽車組件的偽汽車組件和結構組件。整個特效使用了4個animation動畫,分別是:shine前擋風玻璃的流光動畫,suspension車身左右搖晃動畫,lane公路左右移動動畫和steer車道斑馬線動畫。
@keyframes shine{ 0%,80%,100%{ -webkit-transform:translateX(-55px) rotate(24deg); transform:translateX(-55px) rotate(24deg); } 5%,15%,25%,35%,45%,55%,65%,75%,85%,95%{background-color:#2d2d2d} 0%,10%,20%,30%,40%,50%,60%,70%,80%,90%,100%{background-color:#4d4d4d} 33%,44%{ -webkit-transform:translateX(30px) rotate(-14deg); transform:translateX(30px) rotate(-14deg); } 66%{ -webkit-transform:translateX(0px) rotate(-10deg); transform:translateX(0px) rotate(-10deg); } } @keyframes lane{ 0%{ -webkit-transform:translateY(320px); transform:translateY(320px); } 100%{ -webkit-transform:translateY(-160px); transform:translateY(-160px); } } @keyframes steer{ 0%,100%{ -webkit-transform:translateX(-15px) rotate(5deg); transform:translateX(-15px) rotate(5deg); } 50%{ -webkit-transform:translateX(15px) rotate(-5deg); transform:translateX(15px) rotate(-5deg) } } @keyframes suspension{ 0%,75%,100%{ -webkit-transform:rotate(3deg); transform:rotate(3deg) } 10%,30%,50%,70%,90%{top:0} 20%,40%,60%,80%,100%{top:-1px} 25%,50%{ -webkit-transform:rotate(-3deg); transform:rotate(-3deg) } 20%{-webkit-transform:rotate(0deg);transform:rotate(0deg)} 90%{-webkit-transform:rotate(-1deg);transform:rotate(-1deg)} }
以上就是純CSS3製作逼真的汽車運動動畫的內容,更多相關內容請關注PHP中文網(www.php.cn)!