過渡動畫是動畫的基礎
在學習動畫屬性之前
我們需要先了解過渡屬性transition
過渡transition
先來看一個小例子
<p class="demo"></p>
.demo { width: 100px; height: 100px; background-color: royalblue;}.demo:hover { width: 200px;}
這樣當我的遊標懸浮在demo的一瞬間
它的寬度變成了200px
#有沒有辦法讓我們遊標懸浮在元素時,元素寬度緩慢變寬呢
在CSS3之前我們只能使用麻煩的js腳本
但是現在我們只需要添加一個屬性
就可以達到我們的目的
.demo { width: 100px; height: 100px; background-color: royalblue; transition: width 1s; /*增*/}.demo:hover { width: 200px;}
transition它的作用就是指定當你的元素某些樣式改變時
這些樣式可以漸漸過渡到最終屬性值
它是一個複合屬性
有以下子屬性
#transition-property:指定過渡或動態模擬的css屬性
transition-duration:指定過渡所需的時間
#transition-timing-function:指定過渡函數
transition-delay:指定開始出現的延遲時間
transition-property 我們想要哪一種屬性過渡就寫哪一種屬性
或乾脆寫過渡所有屬性的關鍵字all
transition-duration漸變時間屬性值就是「數字+s」
代表幾秒鐘內過渡
transition-timing- function 是可選的屬性值,有以下可選值
-
linear
線性過渡,等價貝塞爾曲線(0.0, 0.0, 1.0, 1.0) ease(預設)
平滑過渡,等價貝塞爾曲線(0.25, 0.1, 0.25, 1.0)ease-in
由慢到快,等價貝塞爾曲線(0.42, 0, 1.0, 1.0)ease-out
由快到慢,等價貝塞爾曲線(0, 0, 0.58, 1.0)ease-in-out
由慢到快再到慢,等價貝塞爾曲線(0.42, 0, 0.58 , 1.0)step-start
等同steps(1, start)step-end
等同steps(1, end)steps():
兩個參數的步進函數。第一個參數為正整數,指定函數步數。第二個參數取值是start或end,指定每一步的值發生變化的時間點。第二個參數可選,預設值為end。cubic-bezier(num, num, num, num):
特定的貝塞爾曲線類型,4個數值需在[0, 1]區間內
大多我們都用不上,最常用的大概就是我們預設的ease和線性過渡linear了
transition-delay 同樣是可選屬性值
如果你想要延遲過渡,換句話說如果我們想要在過渡前停一小會兒
那麼就在這個複合屬性的最後添加我們需要延遲的時間“數字+s”
這個屬性可以對多個不同的屬性進行設定
我們要做的就是使用逗號隔開
.demo { width: 100px; height: 100px; background-color: royalblue; transition: width 1s linear, height 1s linear, background-color 2s 1s; /*改*/}.demo:hover { width: 200px; height: 200px; background-color: lawngreen; /*改*/}
滑鼠移出元素後,元素又過渡回來
使用過渡屬性而不是腳本的另一個原因是
腳本方法改變多個元素樣式可能會產生衝突
解決的方法是使用bool變數加鎖,還是很麻煩
我們的transition過渡屬性就不需要考慮這麼多
元素與元素之間互不影響
還有一點要注意,元素過渡需要知道樣式具體的起始屬性和末尾屬性
比如說我們例子中的width明確了從100px過渡到200px
.demo:hover { width: auto; /*改*/ height: 200px; background-color: lawngreen; /*改*/}
改變了懸浮樣式width為auto
我們發現當遊標懸浮元素後
width屬性並沒有發生過渡
參與過渡的屬性
當然也不是所有的樣式都可以過渡
比如說你想讓<a href="http://www.php.cn/wiki/927.html" target="_blank">display </a>:block
過渡到display:inline-block
那是不可能的
有以下屬性參與過渡
color
visibility
opacity
- ##vertical-align
- z-index
- clip
- #width/height ##top/bottom/ left/right
- background-color/position
- #border-top/bottom/left/right-color/width
font-size/weight
- #font-size/weight
- line-height
- margin/padding-top/bottom/left /right
- max/min-height/width
- #outline-color/width
以上是關於CSS3元素中過渡屬性transition的詳細介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!

在這篇文章中,布萊克·莫里(Blackle Mori)向您展示了一些駭客,同時試圖推動同位HTML支持的極限。如果您敢於使用這些,以免您也被標記為CSS罪犯。

具有CSS的自定義光標很棒,但是我們可以將JavaScript提升到一個新的水平。使用JavaScript,我們可以在光標狀態之間過渡,將動態文本放置在光標中,應用複雜的動畫並應用過濾器。

互動CSS動畫和元素相互啟動的元素在2025年似乎更合理。雖然不需要在CSS中實施乒乓球,但CSS的靈活性和力量的增加,可以懷疑Lee&Aver Lee有一天會成為一種

有關利用CSS背景濾波器屬性來樣式用戶界面的提示和技巧。您將學習如何在多個元素之間進行背景過濾器,並將它們與其他CSS圖形效果集成在一起以創建精心設計的設計。

好吧,事實證明,SVG的內置動畫功能從未按計劃進行棄用。當然,CSS和JavaScript具有承載負載的能力,但是很高興知道Smil並沒有像以前那樣死在水中

是的,讓#039;跳上文字包裝:Safari Technology Preview In Pretty Landing!但是請注意,它與在鉻瀏覽器中的工作方式不同。

此CSS-tricks更新了,重點介紹了年鑑,最近的播客出現,新的CSS計數器指南以及增加了幾位新作者,這些新作者貢獻了有價值的內容。

在大多數情況下,人們展示了@Apply的@Apply功能,其中包括Tailwind的單個property實用程序之一(會改變單個CSS聲明)。當以這種方式展示時,@Apply聽起來似乎很有希望。如此明顯


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具

Atom編輯器mac版下載
最受歡迎的的開源編輯器

WebStorm Mac版
好用的JavaScript開發工具

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能