CSS3動(dòng)態(tài)效果之過(guò)渡屬性(最新推薦)

過(guò)渡——CSS3動(dòng)態(tài)效果 過(guò)渡屬性
一、什么是過(guò)渡:
- 通過(guò) css3 可以在不使用 flash 動(dòng)畫或 javascript 的情況下,為元素從一種樣式變換為另一種樣式時(shí)添加過(guò)渡效果。
- css3 過(guò)渡就是元素從一種樣式逐漸改變?yōu)榱硪环N的效果,需要確定兩點(diǎn):
需要添加效果的 css 屬性
效果的時(shí)長(zhǎng)
二、過(guò)渡屬性:
過(guò)渡有四個(gè)屬性:transition-property 、transition-duration 、transition-timing-function 、transition-delay
1、transition-property
定義:
此屬性可以設(shè)置添加過(guò)渡的 css 樣式,可以單獨(dú)設(shè)置只有某一個(gè) css 屬性具有過(guò)渡效果(property),也可以設(shè)置所有屬性都有過(guò)渡效果(all)
屬性:
transition-property 有三個(gè)屬性值:none、all、property
- 注意:在上面的案例中,雖然寬和高會(huì)獲得過(guò)渡效果,但是你并不能看不出來(lái),因?yàn)闆](méi)有設(shè)置過(guò)渡時(shí)長(zhǎng)。我們?cè)谏厦嫣岬?,設(shè)置過(guò)渡,屬性名和時(shí)長(zhǎng)是必須要設(shè)置的,下面我們就來(lái)看過(guò)度時(shí)長(zhǎng)的屬性如何設(shè)置。
- property 定義應(yīng)用過(guò)渡效果的css屬性名稱列表,列表以逗號(hào)分隔,例如
.box { width: 200px; height: 200px; background-color: blue; transition-property: width,height; } .box:hover { width: 300px; height: 300px; background-color: red; }
此時(shí)寬和高會(huì)獲得過(guò)渡效果,但是背景顏色不會(huì)獲得過(guò)渡效果。因?yàn)槲覀兊?nbsp;transition-property 里面沒(méi)有添加屬性值 background-color 。
- property 表示可以把屬性名一個(gè)一個(gè)列出來(lái),并不是直接寫 property。
- all 所有屬性都會(huì)獲得過(guò)渡效果
- none 沒(méi)有屬性會(huì)獲得過(guò)渡效果
2、transition-duration 定義;
此屬性表示規(guī)定完成過(guò)渡效果需要多少秒或毫秒
屬性值:
transition-duration 只有一個(gè)屬性值:time。表示完成過(guò)渡效果需要花費(fèi)的時(shí)間(以秒s或毫秒ms計(jì)算,默認(rèn)為0,意味著沒(méi)有效果)
有了這個(gè)屬性,上面的案例效果就可以展現(xiàn)出來(lái)了。
.box { width: 200px; height: 200px; background-color: blue; transition-property: width, height; transition-duration: 2s; } .box:hover { width: 300px; height: 300px; background-color: red; }
此時(shí)將鼠標(biāo)放在我們的藍(lán)色盒子上,他的寬高會(huì)用2s變大,但是背景顏色會(huì)瞬間變大,因?yàn)槲覀儾](méi)有給背景顏色添加過(guò)渡效果。
3、transition-timing-function 定義:
此屬性規(guī)定了過(guò)渡效果的速度,默認(rèn)值為ease 。
屬性值:
transition-timing-function 有五個(gè)屬性值:linear、ease、ease-in、ease-out、ease-in-out
- linear 勻速完成過(guò)渡
- ease 慢速開(kāi)始、中間變快、慢速結(jié)束
- ease-in 慢速開(kāi)始,后面勻速
- ease-out 慢速結(jié)束,前面勻速
- ease-in-out 慢速開(kāi)始,中間勻速,慢速結(jié)束
.box { width: 200px; height: 200px; background-color: blue; transition-property: width, height; transition-duration: 2s; transition-timing-function: linear; } .box:hover { width: 300px; height: 300px; background-color: red; }
在 transition-duration 的案例中,我們可以感受到那時(shí)的過(guò)渡變換過(guò)程是慢速開(kāi)始、中間勻速、再慢速結(jié)束,因?yàn)槟菚r(shí)我們沒(méi)有設(shè)置 transition-timing-function 的屬性值,他默認(rèn)為 ease 。此時(shí)我們將他設(shè)置為 linear ,我們可以感受到,此時(shí)他是全程勻速的。其他的屬性值,大家也自己嘗試一下,感受感受他們的不同吧。
4、transition-delay 定義:
此屬性定義:何時(shí)將開(kāi)始過(guò)渡效果,也叫過(guò)渡延遲時(shí)間。
屬性值:
與 transition-duration 一樣,transition-delay 也只有一個(gè)屬性值:time。規(guī)定在過(guò)渡效果開(kāi)始之前需要等待的時(shí)間(以秒s或毫秒ms計(jì)算),默認(rèn)為0,即立即開(kāi)始過(guò)渡效果。
.box { width: 200px; height: 200px; background-color: blue; transition-property: width, height; transition-duration: 2s; transition-timing-function: linear; transition-delay: 2s; } .box:hover { width: 300px; height: 300px; background-color: red; }
此案例中,藍(lán)色盒子會(huì)立即變成紅色盒子,但是會(huì)靜止2s,然后再用2s勻速變大到寬高都為300px。那靜止的2s即為 transition-delay 設(shè)定的屬性值。
三、過(guò)渡的簡(jiǎn)寫
transition: [transition-property] [transition-duration] [transition-timing-function] [transition-delay];
按照上面的順序,列出屬性值即可,屬性值中間用空格分開(kāi)。
所以我們的最后一個(gè)案例也可以寫成:
.box { width: 200px; height: 200px; background-color: blue; transition: all 2s linear 2s; } .box:hover { width: 300px; height: 300px; background-color: red; }
注意:此時(shí)的 transition-property 需要設(shè)置為 all 或者只設(shè)置一個(gè)值(width\height\backgroud-color),設(shè)置為 all 時(shí),width、height、background-color都具有過(guò)渡效果,設(shè)置單個(gè)屬性值時(shí),其他兩個(gè)屬性值就不具有過(guò)渡效果,會(huì)立即變化。不可以將 transition-property 寫成 width,height,即:
.box { width: 200px; height: 200px; background-color: blue; transition: width,height 2s linear 2s; } .box:hover { width: 300px; height: 300px; background-color: red; }
此時(shí)的 width 將不具有過(guò)渡效果,會(huì)立即變?yōu)?300px 。只有 height 會(huì)延遲2s ,然后花費(fèi) 2s 變?yōu)?300px ,再停頓 2s 后,花費(fèi) 2s 變回 200px 。
到此這篇關(guān)于CSS3動(dòng)態(tài)效果 過(guò)渡屬性的文章就介紹到這了,更多相關(guān)CSS3動(dòng)態(tài)效果內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持腳本之家!
相關(guān)文章
CSS3過(guò)渡旋轉(zhuǎn)透視2d3d動(dòng)畫等效果的實(shí)例代碼
這篇文章主要介紹了CSS3過(guò)渡旋轉(zhuǎn)透視2d3d動(dòng)畫等效果的實(shí)例代碼,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-03-18css3 transform過(guò)渡抖動(dòng)問(wèn)題解決
這篇文章主要介紹了css3 transform過(guò)渡抖動(dòng)問(wèn)題解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)2020-10-23CSS3 對(duì)過(guò)渡(transition)進(jìn)行調(diào)速以及延時(shí)
這篇文章主要介紹了CSS3 對(duì)過(guò)渡(transition)進(jìn)行調(diào)速以及延時(shí),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編2020-10-21用css3實(shí)現(xiàn)轉(zhuǎn)換過(guò)渡和動(dòng)畫效果
這篇文章主要介紹了用css3實(shí)現(xiàn)轉(zhuǎn)換過(guò)渡和動(dòng)畫效果,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-03-13CSS3實(shí)現(xiàn)類似翻書(shū)效果的過(guò)渡動(dòng)畫的示例代碼
這篇文章主要介紹了CSS3實(shí)現(xiàn)類似翻書(shū)效果的過(guò)渡動(dòng)畫的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編2019-09-06CSS3使用transition屬性實(shí)現(xiàn)過(guò)渡效果
CSS3中新增的transform屬性,可以實(shí)現(xiàn)元素在變換過(guò)程中的過(guò)渡效果,實(shí)現(xiàn)了基本的動(dòng)畫。下面通過(guò)本文給大家介紹CSS3使用transition屬性實(shí)現(xiàn)過(guò)渡效果,需要的朋友參考下本文2018-04-18css3動(dòng)畫過(guò)渡實(shí)現(xiàn)鼠標(biāo)跟隨導(dǎo)航效果
這篇文章主要介紹了css3動(dòng)畫過(guò)渡實(shí)現(xiàn)鼠標(biāo)跟隨導(dǎo)航效果的相關(guān)資料,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-02-08詳解css3 Transition屬性(平滑過(guò)渡菜單欄案例)
這篇文章主要介紹了詳解css3 Transition屬性(平滑過(guò)渡菜單欄案例)的相關(guān)資料,需要的朋友可以參考下2017-09-05CSS3實(shí)現(xiàn)偽類hover離開(kāi)時(shí)平滑過(guò)渡效果示例
本篇文章主要介紹了CSS3實(shí)現(xiàn)偽類hover離開(kāi)時(shí)平滑過(guò)渡效果示例,具有一定的參考價(jià)值,有興趣的可以了解一下2017-08-10css3過(guò)渡_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
這篇文章主要為大家詳細(xì)介紹了css3過(guò)渡的相關(guān)資料,用CSS3做一些過(guò)渡效果和動(dòng)畫,特別適合Web前端開(kāi)發(fā)員學(xué)習(xí),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-07-11