国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

前端 - css3動畫怎樣對幀的理解?

瀏覽:85日期:2023-07-14 13:39:14

問題描述

第一種:

@keyframes slow {0% { background-position: -0px -291px;}25% { background-position: -602px -0px;}50% { background-position: -302px -291px;}75% { background-position: -151px -291px;}100% { background-position: -0px -291px;} } /*動畫切換的方式是一幀一幀的改變*/-webkit-animation-timing-function: steps(1, start);

第二種:

$spriteWidth: 140px; // 精靈寬度 @keyframes run { 0% { background-position: 0 0; } 100% { background-position: -($spriteWidth * 12) 0; // 12幀 }}#sprite { width: $spriteWidth; height: 144px; background: url('../images/sprite.png') 0 0 no-repeat; animation: run 0.6s steps(12) infinite;}

1,什么叫“一幀一幀的改變”, steps(1, start);該如何理解?2,第二種直接“-($spriteWidth * 12) 0”我就看不懂了,為什么這樣寫?

問題解答

回答1:1. 什么叫“一幀一幀的改變”, steps(1, start);該如何理解?

animation-timing-function 中 steps 的用法參見這篇

steps 詳解

2. 第二種直接“-($spriteWidth * 12) 0”我就看不懂了,為什么這樣寫?

首先顯然這是 Scss 文件(一種 css 預編譯文件)

定義了一個變量:$spriteWidth

-($spriteWidth * 12) 這句就是一個運算呀 => -(140px*12)

回答2:

1: steps(1, start)我在MDN上剛好看到一個解釋

This keyword represents the timing function steps(1, start). Using this timing function, the animation jumps immediately to the end state and stay in that position until the end of the animation.

就是說你的動畫幀一開始就馬上跳到結束了,所以你看見的是keyframes里面5個幀一幀一幀地切換。如果沒有steps(1, start),就會是一個平滑移動的效果。

2: -($spriteWidth * 12)應該是指把你這個動畫分成12幀,每一幀你的背景右移-($spriteWidth * 12)這個長度

標簽: CSS
相關文章:
主站蜘蛛池模板: 欧美一级视频在线高清观看 | 欧美精品专区免费观看 | 九九久久久久久久爱 | 欧美一级特黄视频 | 国产男女爽爽爽免费视频 | 日韩毛片欧美一级a网站 | 精品理论片一区二区三区 | 亚洲免费观看在线视频 | 天天狠操| 国产日韩欧美一区二区三区综合 | 97视频网站| 日韩中文字幕在线观看视频 | 神马午夜不卡 | 日本在线观看不卡免费视频 | 精品欧美一区二区三区在线观看 | 成人在线免费视频播放 | 久久精品亚洲精品国产欧美 | 一级欧美在线的视频 | 91福利国产在线观看香蕉 | 日本一区二区三区在线 视频 | 日本特黄特色视频 | 国产特黄1级毛片 | 欧美一区二区三区免费 | 看真人视频一级毛片 | 成年女人午夜免费视频 | 国内一区二区 | 欧美一级欧美一级在线播放 | 久久中精品中文 | 久草免费在线观看 | 亚洲精品久久99久久一区 | 国产欧美日韩精品在线 | 99久久99这里只有免费费精品 | 特黄特色一级特色大片中文 | 欧美人成一本免费观看视频 | 精品网址 | 久久中文字幕乱码免费 | 欧美激情成人网 | 99在线热播精品免费 | 狠久久 | 亚洲精品第一区二区三区 | 久久国产国内精品对话对白 |