搜尋
首頁web前端html教學css3 过渡记_html/css_WEB-ITnose

CSS3 过渡

  CSS3的transition允许CSS的属性值在一定的时间区间内平滑地过渡。这种效果可以在鼠标单击,获得焦点,被点击或对元素任何改变中触发,并平滑地以动画效果改变CSS的属性值。

transition:[<transition-property> || <transition-duration> || <transition-timing-function> || <transition-delay>]

  transition-property:指定过渡的CSS属性。
  transition-duration:指定完成过渡所需的时间。
  transition-timing-function:指定过渡调速函数。
  transition -delay:指定过渡开始出现的延迟时间。

  transition属性类似于border,font这些属性,可以简写,也可以单独来写。简写时,各函数之间用空格隔开,且需要按一定的顺序排列。另外,作用于多个过渡属性时,中间用逗号隔开。如下:

<!DOCTYPE html><html lang="en" xmlns="http://www.w3.org/1999/xhtml"><head><meta charset="utf-8" /><title></title><style>   div{       width:50px;       height:100px;       background:#ffd800;       /*分开使用transition的扩展属性*/       transition-property:width,height,background;       transition-duration:1s;       transition-timing-function:ease;       transition-delay:.2s;       /*使用transition简写属性*/       transition:width 1s ease .2s,height 1s ease .2s,background 1s ease .2s;   }   div:hover{       width:100px;       height:50px;       background:#00ff90;   }</style></head><body>	<div></div></body></html>

transition-property语法:

transition-property:no | all | <single-transition-property> [, <single-transition-property>] *

  none:没有指定任何样式。
  all:默认值,表示指定元素所有支持transition-property属性的样式。
  :指定一个或多个样式。
  并不是所有样式都能应用transition-property进行过渡,只有具有一个中点值的样式才能具备过渡效果,如颜色,长度,渐变等。

transition-duration语法

transition-duration:<time> [,<time>] *  

  

transition-timing-function语法

transition-timing-function:<single-transition-timing-function> [,<single-transition-timing-function>] *  

  单一的过渡函数

  指单一的过渡函数,主要包括下面几个属性值。
  ease:默认值,元素样式从初始状态过渡到终止状态时速度由快到慢,逐渐变慢。
  linear:元素样式从初始状态过渡到终止状态速度是恒速。
  ease-in:元素样式从初始状态过渡到终止状态时,速度越来越快,呈一种加速状态。这种效果称为渐显效果。
  ease-out:元素样式从初始状态过渡到终止状态时,速度越来越慢,呈一种减速状态。这种效果称为渐隐效果。
  ease-in-out:元素样式从初始状态到终止状态时,先加速再减速。这种效果称为渐显渐隐效果。

  三次贝塞尔曲线:用来定义精确度更高的过渡函数。

  定义三次贝赛尔曲线的语法如下:

cubic-bezier(p0,p1,p2,p3)

  每个点值只允许0~1的值,相当于0%到100%,p0与p3的值固定的,他们始终代表起点坐标(0,0)与终点坐标(1,1)。因此只需要设置p1,p2的点值就行了。

可以用在线的三次贝塞尔工具模拟并实现。

<!DOCTYPE html><html lang="en" xmlns="http://www.w3.org/1999/xhtml"><head><meta charset="utf-8" /><title></title><style>   div{       width:50px;       height:100px;       background:#ffd800;       transition-property:width,height,background;       transition-duration:1s;		/*定义了三次贝塞尔曲线函数,p1的坐标是(.57,.07),p2的坐标是(.69,.16)*/       transition-timing-function:cubic-bezier(.57,.07,.69,.16);       transition-delay:.2s;   }   div:hover{       width:100px;       height:50px;       background:#00ff90;   }</style></head><body>	<div></div></body></html>

  steps()函数:用于把整个操作领域划成同样大小的间隔,每个间隔都是相等的。

steps(<integer> [, [start | end]]?)

  第一个参数是一个数值,主要用来指定steps()函数的间隔数量,此值必须是一个大于0的正整数。
  第二个参数是可选的,默认值为end。

  transition-timing-function:steps(3,start);
  

  表示分3个步骤,动画的步骤效果从每步的开始时跳,所以步骤是3/1, 3/2, 3/3。

  transition-timing-function:steps(3,end);

  

  表示分3个步骤,动画的步骤效果从每步的结束时跳,所以步骤是0, 3/1, 3/2。

transition-delay语法

transition-delay:<time> [, <time>] *

  transition-delay:用来指定一个动画开始执行的时间,也就是说当改变元素属性值后多长时间开始执行过渡效果,它可以是正整数,负整数和0,非零的时候必须将单位设置为s(秒)或ms(毫秒)。
  正整数时好理解,就是延迟几秒开始执行过渡,负整数时,将元素的之前时间截断,也就是transition-duration过渡时间所用的值减去transition-delay的延迟值,这中间的值不会发生,直接跳到剩下的值进行过渡。

CSS3过渡的基础知识你已经掌握了,简单来说就是一个属性四个值,接下来只需要打几遍代码,体会一下各值效果,就可以融会贯通了。

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
為什麼HTML標籤對Web開發很重要?為什麼HTML標籤對Web開發很重要?May 02, 2025 am 12:03 AM

htmltagsareessentialforwebdevelopmentastheyandendenhancewebpages.1)semantictagsimproveaccessibilityandseo.2)semanteLayOut,語義和互動性。 3)poseriblesibilityandseoandseo.3)poseriblesoftagscanoftagscanoftagscanoptagscanoptimizeperefeneandimizeanDenSuroceRecRoscRoss-BrowserCrowserCercerComercompatibility。

說明將一致的編碼樣式用於HTML標籤和屬性的重要性。說明將一致的編碼樣式用於HTML標籤和屬性的重要性。May 01, 2025 am 12:01 AM

一致的HTML編碼風格很重要,因為它提高了代碼的可讀性、可維護性和效率。 1)使用小寫標籤和屬性,2)保持一致的縮進,3)選擇並堅持使用單引號或雙引號,4)避免在項目中混合使用不同風格,5)利用自動化工具如Prettier或ESLint來確保風格的一致性。

如何在 Bootstrap 4 中實現多項目輪播?如何在 Bootstrap 4 中實現多項目輪播?Apr 30, 2025 pm 03:24 PM

在Bootstrap4中實現多項目輪播的解決方案在Bootstrap4中實現多項目輪播並不是一件簡單的事情。雖然Bootstrap...

deepseek官網是如何實現鼠標滾動事件穿透效果的?deepseek官網是如何實現鼠標滾動事件穿透效果的?Apr 30, 2025 pm 03:21 PM

如何實現鼠標滾動事件穿透效果?在我們瀏覽網頁時,經常會遇到一些特別的交互設計。比如在deepseek官網上,�...

HTML 視頻的播放控件樣式怎麼修改HTML 視頻的播放控件樣式怎麼修改Apr 30, 2025 pm 03:18 PM

無法直接通過CSS修改HTML視頻的默認播放控件樣式。 1.使用JavaScript創建自定義控件。 2.通過CSS美化這些控件。 3.考慮兼容性、用戶體驗和性能,使用庫如Video.js或Plyr可簡化過程。

在手機上使用原生select會帶來哪些問題?在手機上使用原生select會帶來哪些問題?Apr 30, 2025 pm 03:15 PM

在手機上使用原生select的潛在問題在開發移動端應用時,我們常常會遇到選擇框的需求。通常情況下,開發者傾...

在手機上使用原生select的弊端是什麼?在手機上使用原生select的弊端是什麼?Apr 30, 2025 pm 03:12 PM

在手機上使用原生select的弊端是什麼?在移動設備上開發應用時,選擇合適的UI組件是非常重要的。許多開發者�...

如何使用Three.js和Octree優化房間內第三人稱漫遊的碰撞處理?如何使用Three.js和Octree優化房間內第三人稱漫遊的碰撞處理?Apr 30, 2025 pm 03:09 PM

使用Three.js和Octree優化房間內第三人稱漫遊的碰撞處理在Three.js中使用Octree實現房間內的第三人稱漫遊並添加碰�...

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脫衣器

Video Face Swap

Video Face Swap

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

熱工具

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

MantisBT

MantisBT

Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

VSCode Windows 64位元 下載

VSCode Windows 64位元 下載

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