0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

CSS漸變知識的詳細講解

電子設(shè)計 ? 來源:電子設(shè)計 ? 作者:電子設(shè)計 ? 2020-12-24 15:43 ? 次閱讀

CSS3 漸變使您能夠是你的背景顏色在兩個或多個顏色之間平滑過渡。

早些時候,你必須使用圖像實現(xiàn)這些效果。 然而, 通過使用CSS3漸變可以減少下載時間和帶寬的使用. 此外,縮放的元素在縮放時看起來更好,因為漸變是由瀏覽器生成的。

一、瀏覽器支持

表中的數(shù)字指定完全支持該屬性的第一個瀏覽器版本。(來源于百度)

數(shù)字后面的 -webkit- 或者 -moz- 使用時需要指定前綴。

屬性ChromeFirefoxSafariOperaIElinear-gradient26.0 10.0 -webkit-10.016.0 3.6 -moz-6.1 5.1 -webkit-12.1 11.1 -o-radial-gradient26.0 10.0 -webkit-10.016.0 3.6 -moz-6.1 5.1 -webkit-12.1 11.6 -o-repeating-linear-gradient26.0 10.0 -webkit-10.016.0 3.6 -moz-6.1 5.1 -webkit-12.1 11.1 -o-repeating-radial-gradient26.0 10.0 -webkit-10.016.0 3.6 -moz-6.1 5.1 -webkit-12.1 11.6 -o-

二、CSS3 線性漸變(向下/向上/向左/向右/傾斜)

要創(chuàng)建線性漸變,必須定義至少兩個顏色停止。顏色停止是你想要渲染平滑過渡之間的顏色。 您還可以設(shè)置一個起始點和一個方向(或角度)和漸變效果。

語法:

background: linear-gradient(direction, color-stop1, color-stop2, ...);

HTML代碼:

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>項目</title>
</head><body>
<div id="grad1"></div></body></html>

例如:

線性漸變 - 上到下

顯示從頂部開始的線性漸變。它從開始的紅色,過渡到黃色:

<style> #grad1 { height: 200px; background: blue; 對于那些不支持漸變的瀏覽器 background: -webkit-linear-gradient(blue, yellow); Safari 5.1 到 6.0 background: -o-linear-gradient(blue, yellow); Opera 11.1 到 12.0 background: -moz-linear-gradient(blue, yellow); Firefox 3.6 到 15 background: linear-gradient(blue, yellow); 標(biāo)準語法 (必須是最后一個) }</style>

線性漸變 - 左到右

例如:

顯示從左開始的線性漸變。它從開始的紅色,過渡到黃色

<style> #grad1 { height: 200px; background: blue; 對于那些不支持漸變的瀏覽器 background: -webkit-linear-gradient(left, blue , yellow); Safari 5.1 到 6.0 background: -o-linear-gradient(right, blue, yellow); Opera 11.1 到 12.0 background: -moz-linear-gradient(right, blue, yellow); Firefox 3.6 到 15 background: linear-gradient(to right, blue , yellow); 標(biāo)準語法 (必須是最后一個) }</style>

線性漸變 - 對角線

可以通過指定水平和垂直起始位置來實現(xiàn)對角線漸變。

下面的示例顯示從左上角開始的線性漸變(到右下角)。它開始紅色,過渡到黃色:

<style> #grad1 { height: 200px; background: blue; 對于那些不支持漸變的瀏覽器 background: -webkit-linear-gradient(left top, blue, yellow); Safari 5.1 到 6.0 background: -o-linear-gradient(bottom right, blue, yellow); Opera 11.1 到 12.0 background: -moz-linear-gradient(bottom right, blue, yellow); Firefox 3.6 到 15 background: linear-gradient(to bottom right, blue, yellow); 標(biāo)準語法(必須是最后一個) }</style>

1. 使用角度

如果你想在漸變方向上有更多的控制,你可以定義一個角度,而不是預(yù)定的方向(下、上、左、右等)。

語法

background: linear-gradient(angle, color-stop1, color-stop2);angle 是水平線和漸變線之間的角度。

下面的示例演示如何使用在線性漸變上使用角度:

例如:

#grad { width: 100%; height: 100px; background: blue; 對于那些不支持漸變的瀏覽器 background: -webkit-linear-gradient(-90deg, blue, yellow); Safari 5.1 到 6.0 background: -o-linear-gradient(-90deg, blue, yellow); Opera 11.1 到 12.0 background: -moz-linear-gradient(-90deg, blue, yellow); Firefox 3.6 到 15 background: linear-gradient(-90deg, blue, yellow); 標(biāo)準語法 }

2. 使用多個停止顏色

下面的示例顯示一個具有多個停止顏色的線性漸變(從上到下)

例如:

#grad { background: blue; 對于那些不支持漸變的瀏覽器 background: -webkit-linear-gradient(blue, yellow, green); Safari 5.1 到 6.0 background: -o-linear-gradient(blue, yellow, green); Opera 11.1 到 12.0 background: -moz-linear-gradient(blue, yellow, green); Firefox 3.6 到 15 background: linear-gradient(blue, yellow, green); 標(biāo)準語法 }

下面實例演示了如何使用彩虹顏色和一些文本來創(chuàng)建一個線性漸變(從左到右)

漸變背景

例如:

#grad { background: blue; 對于那些不支持漸變的瀏覽器 Safari 5.1 到 6.0 background: -webkit-linear-gradient(left,red,orange,yellow,green,blue,indigo,violet); Opera 11.1 到 12.0 background: -o-linear-gradient(left,red,orange,yellow,green,blue,indigo,violet); Fx 3.6 到 15 background: -moz-linear-gradient(left,red,orange,yellow,green,blue,indigo,violet); Standard syntax background: linear-gradient(到 right, red,orange,yellow,green,blue,indigo,violet);}

3. 使用的透明度

CSS3 漸變也支持透明度,可以用來創(chuàng)建淡入淡出效果。

添加透明度,我們用rgba()函數(shù)來定義停止顏色。在rgba()函數(shù)的最后一個參數(shù)可以從0到1的值,并定義顏色的透明度:0表示完全透明,1表示完全的顏色(不透明度)。

下面的示例顯示從左開始的線性漸變。它開始完全透明,過渡到全紅色:

#grad { background: blue; 不支持漸變的瀏覽器 background: -webkit-linear-gradient(left,rgba(255,0,0,0),rgba(255,0,0,1)); Safari 5.1-6 background: -o-linear-gradient(right,rgba(255,0,0,0),rgba(255,0,0,1)); Opera 11.1-12 background: -moz-linear-gradient(right,rgba(255,0,0,0),rgba(255,0,0,1)); Fx 3.6-15 background: linear-gradient(to right, rgba(255,0,0,0), rgba(255,0,0,1)); Standard}

4. 重復(fù)線性漸變

repeating-linear-gradient() 函數(shù)用于重復(fù)線性漸變:

例如:

#grad { background: blue; 不支持漸變的瀏覽器 Safari 5.1 到 6.0 background: -webkit-repeating-linear-gradient(blue, yellow 10%, green 20%); Opera 11.1 到 12.0 background: -o-repeating-linear-gradient(blue, yellow 10%, green 20%); Firefox 3.6 到 15 background: -moz-repeating-linear-gradient(blue, yellow 10%, green 20%); Standard syntax background: repeating-linear-gradient(blue, yellow 10%, green 20%);}

三、CSS3 徑向漸變 (由中心定義)

徑向漸變是由其中心定義的。

要創(chuàng)建徑向漸變,還必須定義至少兩個停止顏色。

語法

background: radial-gradient(shape size at position, start-color, ..., last-color);默認情況下,形狀是橢圓形,大小最遠的角落,位置是中心。

徑向漸變-均勻的間隔停止顏色 (默認)

下面的示例顯示一個徑向漸變,其顏色間隔均勻:

#grad { background: blue; browsers that do not support gradients background: -webkit-radial-gradient(blue, yellow, green); Safari 5.1 到 6.0 background: -o-radial-gradient(blue, yellow, green); Opera 11.6 到 12.0 background: -moz-radial-gradient(blue, yellow, green); Firefox 3.6 到 15 background: radial-gradient(blue, yellow, green); Standard syntax }

徑向漸變-不同間隔的停止顏色

下面的例子顯示了一個具有不同間距的顏色漸變的徑向漸變:

#grad { background: blue; 不支持漸變的瀏覽器 background: -webkit-radial-gradient(blue 5%, yellow 15%, green 60%); Safari 5.1-6.0 background: -o-radial-gradient(blue 5%, yellow 15%, green 60%); Opera 11.6-12.0 background: -moz-radial-gradient(blue 5%, yellow 15%, green 60%); Firefox 3.6-15 background: radial-gradient(blue 5%, yellow 15%, green 60%); Standard syntax }

1. 設(shè)置形狀

形狀參數(shù)定義形狀。它可以取值圓或橢圓。默認值為橢圓形。

下面的例子顯示了一個圓形的徑向漸變:

<!DOCTYPE html><html lang="en"> <head> <meta charset="UTF-8"> <title>項目</title> <style> #grad1 { height: 150px; width: 200px; background: -webkit-radial-gradient(blue, yellow, green); Safari 5.1 到 6.0 background: -o-radial-gradient(blue, yellow, green); Opera 11.6 到 12.0 background: -moz-radial-gradient(blue, yellow, green); Fx 3.6 到 15 background: radial-gradient(blue, yellow, green); 標(biāo)準語法(必須是最后一個) }
#grad2 { height: 150px; width: 200px; background: -webkit-radial-gradient(circle, blue, yellow, green); Safari 5.1 到 6.0 background: -o-radial-gradient(circle, blue, yellow, green); Opera 11.6 到 12.0 background: -moz-radial-gradient(circle, blue, yellow, green); Fx 3.6 到 15 background: radial-gradient(circle, blue, yellow, green); 標(biāo)準語法(必須是最后一個) }</style> </head> <body>
<h3>徑向漸變-形狀</h3>
<p><strong>橢圓(這是默認值):</strong></p> <div id="grad1"></div>
<p><strong>圓:</strong></p> <div id="grad2"></div>
<p><strong>注意:</strong> Internet Explorer 9 和早期的版本不支持漸變。</p>
</body></html>

2. 重復(fù)徑向漸變

repeating-radial-gradient() 函數(shù)用于重復(fù)徑向漸變:

例如:

#grad { background: blue; 不支持漸變的瀏覽器 Safari 5.1 到 6.0 background: -webkit-repeating-radial-gradient(blue, yellow 10%, green 15%); Opera 11.6 到 12.0 background: -o-repeating-radial-gradient(blue, yellow 10%, green 15%); Firefox 3.6 到 15 background: -moz-repeating-radial-gradient(blue, yellow 10%, green 15%); Standard syntax background: repeating-radial-gradient(blue, yellow 10%, green 15%);}

四、總結(jié)

本文基于html基礎(chǔ), 通過對css中漸變效果做了詳細的講解,介紹來了常見的兩種漸變方式。通過豐富的案例讓大家能夠更好的去了解,去體會漸變的用法,希望可以幫助大家更好的學(xué)習(xí)。

審核編輯:符乾江
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4823

    瀏覽量

    68949
  • CSS
    CSS
    +關(guān)注

    關(guān)注

    0

    文章

    110

    瀏覽量

    14410
收藏 人收藏

    評論

    相關(guān)推薦

    芯片封裝工藝詳細講解

    芯片封裝工藝詳細講解
    發(fā)表于 11-29 14:02 ?1次下載

    Tailwind CSS v4.0發(fā)布首個Beta版本

    Tailwind CSS 是一個為快速開發(fā)而精心設(shè)計的原子類 CSS 框架,它提供了充滿設(shè)計感和應(yīng)用程序至上的能力來創(chuàng)建組件,它在最新的 2.0 版本中加入了暗黑模式,開箱即用。
    的頭像 發(fā)表于 11-25 10:02 ?246次閱讀
    Tailwind <b class='flag-5'>CSS</b> v4.0發(fā)布首個Beta版本

    接口測試理論、疑問收錄與擴展相關(guān)知識

    本文章使用王者榮耀游戲接口、企業(yè)微信接口的展示結(jié)合理論知識,講解什么是接口測試、接口測試理論、疑問收錄與擴展相關(guān)知識點的知識學(xué)院,快來一起看看吧~
    的頭像 發(fā)表于 11-15 09:12 ?376次閱讀
    接口測試理論、疑問收錄與擴展相關(guān)<b class='flag-5'>知識</b>點

    研發(fā)都應(yīng)該了解的如何在vite中接入現(xiàn)代化css工程化方案

    好的css工程化方案可以增強我們項目的可維護性、提高樣式的復(fù)用性、進行自動化處理等,在提高頁面加載速度和性能的同時,我們可以有更多的精力進行js邏輯的處理。
    的頭像 發(fā)表于 10-25 17:25 ?437次閱讀

    漸變暗的白光LED驅(qū)動器

    電子發(fā)燒友網(wǎng)站提供《逐漸變暗的白光LED驅(qū)動器.pdf》資料免費下載
    發(fā)表于 10-12 10:13 ?0次下載
    逐<b class='flag-5'>漸變</b>暗的白光LED驅(qū)動器

    基于CSS融合存儲系統(tǒng)的自動化制造服務(wù)平臺存儲解決方案

    基于CSS融合存儲系統(tǒng)的自動化制造服務(wù)平臺存儲解決方案
    的頭像 發(fā)表于 09-10 10:15 ?391次閱讀
    基于<b class='flag-5'>CSS</b>融合存儲系統(tǒng)的自動化制造服務(wù)平臺存儲解決方案

    電感技術(shù)的講解

    詳細講解電感的原理及計算
    的頭像 發(fā)表于 09-06 02:07 ?2340次閱讀
    電感技術(shù)的<b class='flag-5'>講解</b>

    第12章-ADC采集電壓和顯示 基于STM32的ADC—電壓采集(詳細講解+HAL庫)

    第12章-ADC采集電壓和顯示 基于STM32的ADC—電壓采集(詳細講解+HAL庫)
    的頭像 發(fā)表于 08-21 16:31 ?2894次閱讀
    第12章-ADC采集電壓和顯示 基于STM32的ADC—電壓采集(<b class='flag-5'>詳細</b><b class='flag-5'>講解</b>+HAL庫)

    PGA900能直接在CSS上編程嗎?

    您好,PGA900能直接在CSS上編程嗎? 可以通過XDS200下載程序到PGA900上面嗎?
    發(fā)表于 08-08 07:31

    Arm終端CSS革新,加速端側(cè)人工智能時代

    在當(dāng)今信息化與智能化的交匯點,人工智能的發(fā)展勢頭正盛。尤其是在端側(cè)人工智能領(lǐng)域,其對于計算平臺的性能、能效以及集成度的要求日益提升。近日,全球領(lǐng)先的半導(dǎo)體知識產(chǎn)權(quán)(IP)提供商Arm,再次引領(lǐng)行業(yè)潮流,推出了全新的Arm終端計算子系統(tǒng)(CSS),旨在打造迄今為止速度最快、
    的頭像 發(fā)表于 06-24 18:23 ?1532次閱讀

    鴻蒙ArkTS聲明式開發(fā):跨平臺支持列表【顏色漸變】 通用屬性

    設(shè)置組件的顏色漸變效果。
    的頭像 發(fā)表于 06-05 09:17 ?737次閱讀
    鴻蒙ArkTS聲明式開發(fā):跨平臺支持列表【顏色<b class='flag-5'>漸變</b>】 通用屬性

    芯海應(yīng)用筆記:CSS34P16P(A)型應(yīng)用說明文檔

    CSS34P16P(A)是 USB Type-C 型控制器,它符合最新 USB Type-C 型和 PD 標(biāo)準. CSS34P16 為適配器、車載充電器、移動電源等應(yīng)用提供了一個完整的 USB
    發(fā)表于 05-16 14:46

    Arm新Arm Neoverse計算子系統(tǒng)(CSS):Arm Neoverse CSS V3和Arm Neoverse CSS N3

    Arm宣布了兩款新的Arm Neoverse計算子系統(tǒng)(CSS),它們基于“迄今為止最好的一代Neoverse技術(shù)”。是什么讓這些新產(chǎn)品在擁擠的計算技術(shù)領(lǐng)域脫穎而出? Arm的兩個新Arm
    的頭像 發(fā)表于 04-24 17:53 ?1168次閱讀
    Arm新Arm Neoverse計算子系統(tǒng)(<b class='flag-5'>CSS</b>):Arm Neoverse <b class='flag-5'>CSS</b> V3和Arm Neoverse <b class='flag-5'>CSS</b> N3

    STM32L431出現(xiàn)LSE CSS后RTC的ALARM無法進入中斷是怎么回事?。?/a>

    STM32L431的RTC配置使用LSE時鐘,配置ALARMA中斷,可以正常進入中斷,但是出現(xiàn)LSE CSS后重新配置RTC使用LSI做為系統(tǒng)時鐘,但配置后RTC的ALARMA無法進入中斷,這是怎么回事?。?/div>
    發(fā)表于 04-08 06:58

    STM32L431CCT6頻繁出現(xiàn)LSE CSS錯誤是什么原因?qū)е碌模?/a>

    STM32L431CCT6芯片,外部使用32.768k的晶振,匹配電容22pf。LSE作為RTC,LPUART1的時鐘源,啟用LSE CSS功能。經(jīng)常會發(fā)生LSE CSS錯誤,在發(fā)生錯誤的時候沒有
    發(fā)表于 03-28 09:01