真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

css3的@keyframes有什么用

小編給大家分享一下css3的@keyframes有什么用,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!

創(chuàng)新互聯(lián)建站長期為近千家客戶提供的網(wǎng)站建設服務,團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為太白企業(yè)提供專業(yè)的成都網(wǎng)站制作、網(wǎng)站建設、外貿(mào)網(wǎng)站建設,太白網(wǎng)站改版等技術(shù)服務。擁有十年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。

CSS3 @keyframes是什么?有什么用?

@keyframes是CSS3的一種規(guī)則,可以用來定義CSS動畫的一個周期的行為,可以創(chuàng)建簡單的動畫。

動畫與轉(zhuǎn)換類似,因為它們都是隨時間改變CSS屬性的表示值。主要區(qū)別在于,當屬性值更改時(例如,當懸停時屬性值發(fā)生改變時),轉(zhuǎn)換會隱式的觸發(fā),但在應用動畫屬性時會顯式執(zhí)行動畫。因此,動畫需要顯示動畫屬性的顯式值。這些值是在@keyframes規(guī)則中指定的動畫關(guān)鍵幀定義的。因此,@keyframes規(guī)則里是由一組封裝的CSS樣式規(guī)則組成的,這些規(guī)則描述了屬性值如何隨時間變化。

然后,使用不同的CSS  animation(動畫)屬性,可以控制動畫的許多不同方面,包括動畫迭代的次數(shù),是否在開始和結(jié)束值之間交替,以及動畫是否應該運行或暫停。動畫也可以延遲其開始時間。

@keyframe規(guī)則由關(guān)鍵字“@keyframe”組成,后面接著是給出動畫名稱的標識符(將使用animation-name引用),隨后是通過一組樣式規(guī)則(用大括號分隔)。然后,通過使用標識符作為animation-name屬性的值,將動畫應用于元素。例如:

/* 定義動畫*/
@keyframes 動畫名稱{
    /* 樣式規(guī)則*/
}

/* 將它應用于元素 */
.element {
    animation-name: 動畫名稱(在@keyframes中已經(jīng)聲明好的);

    /* 或使用動畫簡寫屬性*/
    animation: 動畫名稱 1s ...
}

在@keyframes規(guī)則的大括號里有什么?

在大括號中,我們需要定義關(guān)鍵幀或航點,這些關(guān)鍵幀或航點指定在動畫期間的特定點處正在動畫化的屬性的值。這允許我們控制動畫序列中的中間步驟。例如,一個簡單動畫的@keyframe可以是這樣:

@keyframes change-bg-color {
    0% {
        background-color: red;
    }
    50% {
        background-color: blue;
    }
    100%{
    	background-color: red;
    }
}
.demo{
	 -webkit-animation:change-bg-color 5s infinite;
         animation: change-bg-color 5s infinite;
}

運行效果:

css3的@keyframes有什么用

'0%'、‘50%’、'100%'都是關(guān)鍵幀選擇器,每個選擇器定義一個關(guān)鍵幀規(guī)則。關(guān)鍵幀規(guī)則的關(guān)鍵幀聲明塊由屬性和值組成。

上述動畫類似于簡單的過渡效果:背景顏色從動畫開頭的一個值(0%)開始變化,在中間達到一個值(50%),在動畫結(jié)束時達到另一個值(100%)。“0%”、”50%”和“100%”關(guān)鍵幀選擇器定義了希望動畫屬性更改值的航點或百分點。我們也可以使用選擇器關(guān)鍵字 from,to而不是分別使用0%和100%,它們是等效的。

@keyframes change-bg-color {
   from{
        background-color: red;
    }
    50% {
        background-color: blue;
    }
    to{
    	background-color: red;
    }
}

關(guān)鍵幀選擇器由一個或多個以逗號分隔的百分比值或from和to關(guān)鍵字組成。請注意,百分比單位說明符必須用于百分比值。因此,'0'是無效的關(guān)鍵幀選擇器。

以下是具有關(guān)鍵幀選擇器的動畫示例,其中包括多個以逗號分隔的百分比值和/或關(guān)鍵字關(guān)鍵幀選擇器from和to。

@keyframes bouncing {
    0%, 50%, 100% { /* 或者 from, 50%, to */
        top: 0;
    }
    25%, 75% {
        top: 100px;
    }
}

上面的@keyframes規(guī)則定義:元素的頂部偏移量在開始時,中途和動畫結(jié)束時將等于零,并且它將四分之一和四分之三路徑時等于100px; 這意味著元素在動畫循環(huán)中上下移動了好幾次。

@keyframes規(guī)則創(chuàng)建簡單動畫的示例:

1、定義動畫發(fā)生的空間

HTML代碼:

2、使用@keyframes規(guī)則創(chuàng)建簡單動畫

css代碼

body {
  background-color: #fff;
  color: #555;
  font-size: 1.1em;
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}
.container {
  margin: 50px auto;
  min-width: 320px;
  max-width: 500px;
}

.element {
  margin: 0 auto;
  width: 100px;
  height: 100px;
  background-color: #0099cc;
  border-radius: 50%;
  position: relative;
  top: 0;
  -webkit-animation: bounce 2s infinite;
  animation: bounce 2s infinite;
}

@-webkit-keyframes bounce {
  from {
    top: 100px;
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  25% {
    top: 50px;
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  50% {
    top: 150px;
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  75% {
    top: 75px;
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  to {
    top: 100px;
  }
}

@keyframes bounce {
  from {
    top: 100px;
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  25% {
    top: 50px;
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  50% {
    top: 150px;
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  75% {
    top: 75px;
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  to {
    top: 100px;
  }
}

3、運行效果

css3的@keyframes有什么用

在上面的示例中,為名為“bounce”的動畫指定了五個關(guān)鍵幀。在第一和第二關(guān)鍵幀之間(即,在'0%'和'25%'之間),使用ease-out定時功能。在第二和第三關(guān)鍵幀之間(即,在'25%'和'50%'之間),使用ease-in定時功能,等等。效果將顯示為向上移動50px的元素,在達到其最高點時減慢,然后在它回落到150px時加速。動畫的后半部分以類似的方式運行,但僅將元素向上移動25px。此動畫產(chǎn)生一個彈跳效果,可用于模擬彈跳球動畫。

說明:

@keyframes規(guī)則不級聯(lián) ; 因此,動畫永遠不會從多個@keyframes規(guī)則派生關(guān)鍵幀。

要確定關(guān)鍵幀集,選擇器中的所有值都需按時間遞增排序。如果存在任何重復項(例如,如果我們編寫了兩個'50%'關(guān)鍵幀規(guī)則和聲明塊),則@keyframes規(guī)則將指定最后一個關(guān)鍵幀用于提供該時間的關(guān)鍵幀信息。@keyframes如果多個關(guān)鍵幀指定相同的關(guān)鍵幀選擇器值,則規(guī)則中沒有級聯(lián)。

看完了這篇文章,相信你對css3的@keyframes有什么用有了一定的了解,想了解更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!


標題名稱:css3的@keyframes有什么用
文章源于:http://weahome.cn/article/pchdhp.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部