搜尋
首頁web前端css教學如何使用 CSS 在一個元素上建立多個過渡?

如何使用 CSS 在一个元素上创建多个过渡?

使用 CSS 在元素上建立多個過渡是為網站增添趣味和互動性的好方法。透過合併各種過渡,我們可以為用戶創建動態且引人入勝的體驗。在本文中,我們將介紹如何使用 CSS 在元素上建立多個過渡的基礎知識。

層疊樣式表 (CSS) 是用來設計網頁樣式的強大工具。其最有用的功能之一是能夠在元素的不同狀態之間創建平滑且具有視覺吸引力的過渡,例如當將其懸停或單擊時。

什麼是 CSS 轉換?

在了解如何創建多個過渡之前,我們首先了解什麼是 CSS 過渡。過渡是元素的兩種狀態之間的逐漸變化。例如,當我們將滑鼠懸停在按鈕上時,其背景顏色逐漸從一種顏色變為另一種顏色。 CSS 允許我們指定這些轉換的持續時間和計時,以及正在轉換的屬性。

文法

css-selector{
   transition: property duration timing-function delay;
}

CSS 中的過渡屬性

我們可以在 CSS 中使用的過渡屬性包括 -

  • transition-property - 此屬性指定要轉換哪些 CSS 屬性。

  • transition-duration - 此屬性指定轉換的持續時間(以秒或毫秒為單位)。預設情況下,過渡持續時間為 0,這表示沒有應用過渡效果。

  • transition-timing-function - 此屬性控制轉換的速度和時間。

  • transition-delay - 此屬性指定轉換開始前的延遲。

建立基本轉換

要建立過渡,我們需要指定要設定動畫的屬性,例如過渡的持續時間、計時函數和任何延遲。例如,要為按鈕的寬度建立過渡,為此我們可以使用以下程式碼 -

button {
   transition: width 0.5s ease-in-out;
}

上面的程式碼指定按鈕的寬度將使用緩入調出計時函數在 0.5 秒的時間內過渡。

建立多個過渡

要在元素上建立多個過渡,我們需要在 CSS 程式碼中新增其他過渡。例如,要建立一個同時轉換寬度和背景顏色屬性的按鈕,為此我們可以使用以下程式碼 -

button {
   transition: width 0.5s ease-in-out, background-color 0.5s ease-in-out;
}

上面的程式碼指定按鈕的寬度和背景顏色屬性將使用緩入調出計時函數在 0.5 秒的時間內進行轉換。

以下是一些完整的程式碼範例,說明如何使用 CSS 在元素上建立多個過渡 -

範例 1

在此範例中,我們將建立一個可轉換寬度和背景顏色屬性的按鈕。但是,我們將為每個過渡使用不同的持續時間來創建交錯效果。

<html>
<head>
   <style>
      body{
         text-align: center;
      }
      button {
         margin: auto;
         width: 100px;
         height: 50px;
         background-color: green;
         border: none;
         color: #fff;
         font-size: 16px;
         padding: 10px 20px;
         transition: width 0.5s ease-in, background-color 1s ease-out;
      }
      button:hover {
         width: 150px;
         background-color: red;
      }
   </style>
</head>
   <body>
      <h3 id="Multiple-Transitions-with-Different-Durations">Multiple Transitions with Different Durations</h3>
      <button>Hover Me</button>
   </body>
</html>

在上面的範例中,我們為按鈕設定了100px的寬度和綠色的background-color。然後,我們設定過渡屬性來過渡寬度和背景顏色屬性。但是,我們對寬度過渡使用 0.5 秒的持續時間,對背景顏色過渡使用 1 秒的持續時間。這會產生交錯效果,其中按鈕寬度的過渡速度快於背景顏色。當滑鼠懸停在按鈕上時,寬度會擴展為150px,並且背景顏色將變為紅色。

範例 2

在此範例中,我們將建立一個同時轉換背景顏色和邊框半徑屬性的方塊。但是,我們將為邊界半徑過渡使用延遲。

<html>
<head>
   <style>
      body{
         text-align: center;
      }
      .box {
         margin: auto;
         width: 200px;
         height: 200px;
         background-color: red;
         border-radius: 50%;
         transition: background-color 0.5s ease-in-out, border-radius
         0.5s ease-in-out 0.5s;
      }
      .box:hover {
         background-color: blue;
         border-radius: 0;
      }
   </style>
</head>
   <body>
      <h3 id="Multiple-Transitions-with-Delays">Multiple Transitions with Delays</h3>
      <div> Hover over the below circle to see multiple transitions</div>
      <div class="box"></div>
   </body>
</html>

在上面的範例中,我們將框的寬度和高度設定為 200px,背景顏色設定為紅色。然後,我們設定過渡屬性來過渡背景顏色和邊框半徑屬性。然而,我們對邊界半徑過渡使用 0.5 秒的延遲。這意味著背景顏色將立即過渡,而邊框半徑將等待 0.5 秒後再過渡。當滑鼠懸停在該框上時,背景顏色將變更為藍色,邊框半徑將變為 0,從而創建一個正方形。

範例 3

在這裡,我們將建立一個可以轉換寬度和顏色屬性的按鈕。但是,我們將為每個轉換使用不同的計時函數來創建獨特的效果。

<html>
<head>
   <style>
      body{
         text-align: center;
      }
      button {
         margin: auto;
         width: 120px;
         height: 60px;
         background-color: blue;
         border: none;
         color: red;
         font-size: 18px;
         padding: 10px 20px;
         transition: width 0.5s cubic-bezier(0.25, 0.1, 0.25, 1),
         color 1s ease-in-out;
      }
      button:hover {
         width: 180px;
         color: #fff;
      }
   </style>
</head>
   <body>
      <h3 id="Multiple-Transitions-with-Different-Timing-Functions">Multiple Transitions with Different Timing Functions</h3>
      <button>Hover Me</button>
   </body>
</html>

在上面的範例中,我們設定按鈕的寬度為 120px,背景顏色為藍色,然後設定過渡屬性以過渡寬度和顏色屬性。然而,我們為每個轉換使用不同的計時函數。寬度過渡使用自訂的三次貝塞爾函數。當滑鼠懸停在按鈕上時,寬度擴展為 180px,文字顏色將從紅色變為白色。

結論

CSS 過渡是在網頁上創建流暢且具有視覺吸引力的效果的強大工具。透過使用過渡屬性,我們可以指定持續時間、計時函數和正在過渡的屬性。我們還可以透過在過渡屬性中指定多個屬性來在元素上建立多個過渡。

以上是如何使用 CSS 在一個元素上建立多個過渡?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文轉載於:tutorialspoint。如有侵權,請聯絡admin@php.cn刪除
比較不同類型的本機JavaScript彈出窗口比較不同類型的本機JavaScript彈出窗口Apr 15, 2025 am 10:48 AM

JavaScript具有各種內置彈出API,它們顯示用於用戶交互的特殊UI。著名:

為什麼可訪問的網站如此難以構建?為什麼可訪問的網站如此難以構建?Apr 15, 2025 am 10:45 AM

前幾天,我與一些前端人們聊天,講述了為什麼這麼多公司努力創建可訪問的網站。為什麼可訪問的網站如此艱難

'隱藏”屬性顯然很弱'隱藏”屬性顯然很弱Apr 15, 2025 am 10:43 AM

有一個HTML屬性,它可以正是您認為應該做的:

看看Jamstack的速度,按數字看看Jamstack的速度,按數字Apr 15, 2025 am 10:39 AM

人們說jamstack網站很快 - 讓我們通過查看真實的性能指標來找出原因!我們將涵蓋普通指標,例如時間首先字節

實用CSS自定義屬性的模式使用實用CSS自定義屬性的模式使用Apr 15, 2025 am 10:34 AM

我一直在與CSS自定義屬性一起玩耍以發現其功能,因為瀏覽器支持終於在我們可以在我們的地方使用它們的地方

jamstack工具和分類範圍jamstack工具和分類範圍Apr 15, 2025 am 10:31 AM

隨著Jamstack的美好世界變得越來越大,所有幫助它的服務和工具都一如既往地重要。有靜態網站

刪除Internet Explorer的商業案例刪除Internet Explorer的商業案例Apr 15, 2025 am 10:30 AM

Internet Explorer(IE)11與其他所有主要瀏覽器之間的距離是越來越多的鴻溝。增加對技術過時的支持

焦點戒指的動畫位置焦點戒指的動畫位置Apr 15, 2025 am 10:27 AM

莫里斯·馬漢(Maurice Mahan)創建了FocusOverlay,這是一個“用於創建重點元素疊加的庫”。該描述對您有些混亂,不需要一個庫

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
4 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
4 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
4 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
1 個月前By尊渡假赌尊渡假赌尊渡假赌

熱工具

VSCode Windows 64位元 下載

VSCode Windows 64位元 下載

微軟推出的免費、功能強大的一款IDE編輯器

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中