摘要:離開(kāi)時(shí)效果生硬由于元素只有在偽類觸發(fā)的時(shí)候,效果才能加到元素上。簡(jiǎn)單解決在此處留一個(gè)就夠了去掉這個(gè)這只是最簡(jiǎn)單的動(dòng)畫(huà)實(shí)現(xiàn),但對(duì)于目前大部分需求來(lái)說(shuō),配合配合貝塞爾曲線,已經(jīng)足夠用了。
由于hover偽類添加的動(dòng)畫(huà)效果,僅當(dāng)鼠標(biāo)放在元素上時(shí)會(huì)被觸發(fā),而當(dāng)鼠標(biāo)離開(kāi)時(shí),效果會(huì)中斷,會(huì)顯得很生硬。
大多數(shù)人的想法都是使用js的onmouseover和onmouseleave事件來(lái)實(shí)現(xiàn)動(dòng)畫(huà)效果。其實(shí)不必這么麻煩,CSS3便可以幫你解決這些問(wèn)題。
離開(kāi)時(shí)效果生硬
由于div元素只有在:hover偽類觸發(fā)的時(shí)候,效果才能加到div元素上。
當(dāng)鼠標(biāo)離開(kāi)div元素的時(shí)候,:hover偽類將不再生效,瞬間丟掉hover里寫(xiě)的動(dòng)畫(huà)效果。
此時(shí),我們應(yīng)當(dāng)在原本元素上再寫(xiě)一個(gè)一模一樣的transition效果,將離開(kāi)斷掉的動(dòng)畫(huà)效果續(xù)接上。
簡(jiǎn)單解決
此時(shí),不管鼠標(biāo)在什么時(shí)候離開(kāi)元素,都會(huì)原樣返回。
但此時(shí)會(huì)有一個(gè)問(wèn)題,鼠標(biāo)放上去,立馬離開(kāi),或者鼠標(biāo)從上邊勻速劃過(guò),div回到原樣的時(shí)間,依舊是1s。
其實(shí),我們?cè)趆over里寫(xiě)的transition:all 1s linear完全是多余的。
transition有一個(gè)特性,只要是帶有數(shù)值類型的屬性(例如:% , rgba() , rgb() , hsla() , 數(shù)字等),在其發(fā)生變化的時(shí)候,均會(huì)被觸發(fā)動(dòng)畫(huà)效果。
因此,不管:hover偽類什么時(shí)候丟掉我的動(dòng)畫(huà),也不管我:hover時(shí),元素動(dòng)畫(huà)走到了什么地步。只要元素本身帶有transitioin,該動(dòng)畫(huà)便會(huì)從當(dāng)前動(dòng)畫(huà)執(zhí)行到的地方,以相同的時(shí)間返回原樣。
簡(jiǎn)單解決
這只是最簡(jiǎn)單的動(dòng)畫(huà)實(shí)現(xiàn),但對(duì)于目前大部分需求來(lái)說(shuō),配合配合貝塞爾曲線,已經(jīng)足夠用了。
你僅僅需要做到,hover中的最終樣式,保證為數(shù)值樣式變OK了。
像display:block變?yōu)閐isplay:none就不好使了,此時(shí)我們可以用visibilty:1變?yōu)関isibilty:0,同樣也可以簡(jiǎn)單實(shí)現(xiàn)顯示到隱藏的效果。
另外加一句,不太清楚transition屬性的可以自行去百度去,transition-timing-function屬性定義的速度曲線,使用cubic-bezier貝塞爾曲線,可以做到很多效果,大家可以上這個(gè)網(wǎng)址去試一試貝塞爾曲線實(shí)現(xiàn)的動(dòng)畫(huà)。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/112378.html
摘要:離開(kāi)時(shí)效果生硬由于元素只有在偽類觸發(fā)的時(shí)候,效果才能加到元素上。簡(jiǎn)單解決在此處留一個(gè)就夠了去掉這個(gè)這只是最簡(jiǎn)單的動(dòng)畫(huà)實(shí)現(xiàn),但對(duì)于目前大部分需求來(lái)說(shuō),配合配合貝塞爾曲線,已經(jīng)足夠用了。 由于hover偽類添加的動(dòng)畫(huà)效果,僅當(dāng)鼠標(biāo)放在元素上時(shí)會(huì)被觸發(fā),而當(dāng)鼠標(biāo)離開(kāi)時(shí),效果會(huì)中斷,會(huì)顯得很生硬。 大多數(shù)人的想法都是使用js的onmouseover和onmouseleave事件來(lái)實(shí)...
摘要:鼠標(biāo)移動(dòng)觸發(fā)的動(dòng)畫(huà)效果。第二個(gè)參數(shù)就是動(dòng)畫(huà)耗時(shí),默認(rèn)是,所以必不可少,要不然沒(méi)有動(dòng)畫(huà)效果,沒(méi)什么可說(shuō)的。多個(gè)樣式各個(gè)樣式用逗號(hào)隔開(kāi)即可寬度完成變化,高度延遲執(zhí)行,完成變化,背景色完成變化效果如下未完待續(xù)1.transition的瀏覽器支持情況 IE10+支持,IE6789都不支持!目前,其他瀏覽器最新版本都支持,不需要再加前綴-webkit- 之類的了 2. 還是一步一步說(shuō)說(shuō)怎么用trans...
摘要:的新特性大致分為以下六類選擇器邊框與圓角背景與漸變過(guò)渡變換動(dòng)畫(huà)下面分別說(shuō)一說(shuō)以上六類都有哪些內(nèi)容選擇器基本選擇器基本選擇器又分為子選擇器相鄰兄弟選擇器通用兄弟選擇器群組選擇器屬性選擇器為帶有屬性的元素設(shè)置樣式為屬性的元素設(shè)置樣式選擇屬性值包 CSS3的新特性大致分為以下六類 1.CSS3選擇器 2.CSS3邊框與圓角 3.CSS3背景與漸變 4.CSS3過(guò)渡 5.CSS3變換 ...
閱讀 833·2023-04-25 19:49
閱讀 3769·2021-09-30 09:47
閱讀 2761·2021-09-13 10:21
閱讀 2692·2021-08-24 10:04
閱讀 3177·2019-08-30 15:55
閱讀 2323·2019-08-30 15:55
閱讀 2410·2019-08-30 15:54
閱讀 3479·2019-08-30 13:53