本篇文章給大家?guī)?lái)了關(guān)于css中漸變、陰影和濾鏡的相關(guān)知識(shí),其中包括了線性漸變、徑向漸變、圓錐漸變等等相關(guān)問(wèn)題,希望對(duì)大家有幫助。
推薦學(xué)習(xí):css視頻教程
一、初識(shí) CSS 漸變
CSS 漸變是image
類型的一種特殊類型用gradient
表示,由兩種或多種顏色之間的漸進(jìn)過(guò)渡組成。
三種漸變類型:
- 線性:由
linear-gradient()
函數(shù)創(chuàng)建 - 徑向:由
radial-gradient()
函數(shù)創(chuàng)建 - 圓錐:由
conic-gradient()
函數(shù)創(chuàng)建
ps:還可以使用 repeating-linear-gradient()
和repeating-radial-gradient()
函數(shù)創(chuàng)建重復(fù)漸變。
漸變可以在任何使用image
的地方使用,例如在背景中。
二、CSS 線性漸變
2.1 介紹線性漸變
-
說(shuō)明
- 要?jiǎng)?chuàng)建線性漸變,只需指定兩種顏色即可,這些被稱為色標(biāo),至少指定兩個(gè)色標(biāo),還可以設(shè)置起點(diǎn)和方向(或角度)以及漸變效果。
-
語(yǔ)法
-
background-image: linear-gradient(direction(方向), color1(顏色值), color2(顏色值), ...);
-
2.2 線性漸變應(yīng)用
2.2.1 線性漸變 – 從上到下(默認(rèn))
-
代碼示例
-
<style> .box { width: 300px; height: 100px; background-image: linear-gradient(red, yellow); }</style> <body> <p class="box"></p> </body>
-
效果如下
-
2.2.2 線性漸變 – 從左到右
-
代碼示例
-
background-image: linear-gradient(to right, red, yellow);
-
效果如下
-
2.2.3 線性漸變 – 對(duì)角線
-
代碼示例
-
background-image: linear-gradient(to bottom right, red, yellow);
-
效果如下
-
2.2.4 線性漸變 – 設(shè)置角度
-
說(shuō)明
- 如果你想要更精確地控制漸變的方向,你可以給漸變?cè)O(shè)置一個(gè)具體的角度。
- 在使用角度的時(shí)候,
0deg
代表漸變方向?yàn)閺南碌缴?90deg
代表漸變方向?yàn)閺淖蟮接遥T如此類正角度都屬于順時(shí)針?lè)较颉?而負(fù)角度意味著逆時(shí)針?lè)较颉?/li>
-
代碼示例
-
background-image: linear-gradient(180deg, red, yellow);
-
效果如下
-
2.2.5 線性漸變 – 使用多個(gè)色標(biāo)
-
代碼示例
-
background-image: linear-gradient(red, yellow, green);
-
效果如下
-
2.2.6 線性漸變 – 重復(fù)線性漸變
-
說(shuō)明
repeating-linear-gradient()
函數(shù)用于重復(fù)線性漸變。
-
代碼示例
-
background-image: repeating-linear-gradient(red, yellow 10px);
-
效果如下
-
三、CSS 徑向漸變
3.1 介紹徑向漸變
-
說(shuō)明
- 徑向漸變類似于線性漸變,不同的地方是徑向漸變從中心點(diǎn)向外輻射。
- 可以指定該中心點(diǎn)的位置,還可以將它們?cè)O(shè)為圓形或橢圓形。
-
語(yǔ)法
-
background-image: radial-gradient(shape(設(shè)置形狀,默認(rèn)為橢圓形), size(最遠(yuǎn)角), position(中心), color1(顏色值), color2(顏色值));
-
3.2 徑向漸變應(yīng)用
3.2.1 徑向漸變-均勻間隔的色標(biāo)(默認(rèn))
-
代碼示例
-
<style> .box { width: 300px; height: 100px; background-image: radial-gradient(red, yellow, green); }</style> <body> <p class="box"></p> </body>
-
效果如下
-
3.2.2 徑向漸變-不同間距的色標(biāo)
-
代碼示例
-
background-image: radial-gradient(red 10%, yellow 20%, green 50%);
-
效果如下
-
3.2.3 徑向漸變-設(shè)置形狀
-
代碼示例
-
/* 設(shè)置為圓形形狀 */background-image: radial-gradient(circle, red 10%, yellow 20%, green 50%);
-
效果如下
-
3.2.4 徑向漸變-設(shè)置漸變的中心
-
說(shuō)明
- 您可以使用關(guān)鍵字、百分比或絕對(duì)長(zhǎng)度、長(zhǎng)度和百分比值重復(fù)來(lái)定位漸變的中心(如果只有一個(gè)),否則按照從左到右的位置順序。
-
代碼示例
-
background-image: radial-gradient(at 10% 30%, red 10%, yellow 20%, green 50%);
-
效果如下
-
3.2.5 徑向漸變-重復(fù)徑向漸變
-
代碼示例
-
background-image: repeating-radial-gradient(black, black 5px, #fff 5px, #fff 10px);
-
效果如下
-
四、CSS 圓錐漸變
4.1 介紹圓錐漸變
-
說(shuō)明
- 圓錐漸變類似于徑向漸變,兩者均為圓形,并使用元素的中心作為色標(biāo)的源點(diǎn)。
- 它是圍繞中心點(diǎn)按照扇形方向進(jìn)行旋轉(zhuǎn)的漸變。
-
語(yǔ)法
-
background-image: conic-gradient(from angle(表示起始的角度,默認(rèn)為從上到下) at position(設(shè)置圓錐中心點(diǎn)的位置), start-color(定義開(kāi)始顏色), stop-color(定義結(jié)束顏色))
-
4.2 圓錐漸變的應(yīng)用
4.2.1 圓錐漸變-順時(shí)針?lè)较蛐D(zhuǎn)(默認(rèn)方式)
-
代碼示例
-
<style> .box { width: 300px; height: 300px; background-image: conic-gradient(red,yellow); }</style> <body> <p class="box"></p> </body>
-
效果如下
-
4.2.2 圓錐漸變-設(shè)置漸變的中心點(diǎn)
-
代碼示例
-
background-image: conic-gradient(at 30% 20%, red,yellow);
-
效果如下
-
4.2.3 圓錐漸變-使用多個(gè)色標(biāo)
-
代碼示例
-
background-image: conic-gradient(red, orange, yellow, green, teal, blue, purple);
-
效果如下
-
4.2.4 圓錐漸變-重復(fù)圓錐漸變
-
代碼示例
-
background-image: repeating-conic-gradient(red 10%, yellow 20%);
-
效果如下
-
五、CSS 漸變補(bǔ)充知識(shí)
5.1 創(chuàng)建實(shí)線
-
說(shuō)明
- 要在不同顏色之間創(chuàng)建一條單一的硬線,即不同顏色的顏色不是不同的,可以將不同的位置顏色設(shè)置為相同
-
代碼示例
-
background: linear-gradient(to bottom left, red 50%, yellow 50%);
-
效果如下
-
5.2 使用透明度
-
說(shuō)明
- 如需添加透明度,我們使用 rgba() 函數(shù)來(lái)定義色標(biāo)。 rgba() 函數(shù)中的最后一個(gè)參數(shù)可以是 0 到 1 的值,它定義顏色的透明度:0 表示全透明,1 表示全彩色(無(wú)透明)。
- 也可以使用
transparent
參數(shù),代表全透明。
-
代碼示例
-
background-image: linear-gradient(to right, transparent, red);
-
效果如下
-
CSS 陰影
一、初識(shí) CSS 陰影
CSS陰影主要的作用是可以讓頁(yè)面中的文字和元素具有立體的效果,從而被突出出來(lái)。
兩種陰影屬性:
box-shadow
:用于給元素添加陰影text-shadow
:用于給文本添加陰影
ps:還有一個(gè) filter
濾鏡的函數(shù)drop-shadow()
也可以添加陰影,它主要用于給透明圖像的非透明部分添加陰影效果。
二、box-shadow
屬性
2.1 介紹box-shadow
屬性
-
說(shuō)明
- 用于在元素的框架上添加陰影效果,還可以在同一個(gè)元素上設(shè)置多個(gè)陰影效果,用逗號(hào)隔開(kāi)。
-
語(yǔ)法
-
box-shadow: OffsetX(水平偏移), OffsetY(垂直偏移), Blur(模糊半徑), Spread(擴(kuò)展距離,陰影的尺寸), Color(陰影顏色), Position(陰影位置,默認(rèn)在外部(outset));
-
2.2 box-shadow
屬性的應(yīng)用
2.2.1 box-shadow
屬性-基本使用
-
代碼示例
-
<style> .box { width: 300px; height: 300px; background-color: yellow; box-shadow: 10px 10px; }</style> <body> <p class="box"></p> </body>
-
效果如下
-
2.2.2 box-shadow
屬性-多重陰影與定向陰影
-
代碼示例
-
box-shadow: -5px 0 5px 0px #000, 0 -5px 5px 0px #000;
-
效果如下
-
2.2.3 box-shadow
屬性-模擬邊框
-
代碼示例
-
box-shadow: 0px 0px 0px 10px #000, 0px 0px 0px 20px red;
-
效果如下
-
2.2.4 box-shadow
屬性-內(nèi)陰影
-
代碼示例
-
box-shadow: 0px 0px 30px 10px red inset;
-
效果如下
-
三、text-shadow
屬性
3.1 介紹text-shadow
屬性
-
說(shuō)明
- 為文字添加陰影,也可以添加多個(gè)陰影,用逗號(hào)隔開(kāi)。
-
語(yǔ)法
-
text-shadow: OffsetX(水平偏移), OffsetY(垂直偏移), Blur(模糊半徑), Color(陰影顏色));
-
-
注意
text-shadow
沒(méi)有擴(kuò)展距離屬性值,陰影位置屬性值。
3.2 text-shadow
屬性的應(yīng)用
3.2.1 text-shadow
屬性-基本使用
-
代碼示例
-
<style> .box { width: 300px; height: 300px; background-color: yellow; text-shadow: 0px 0px 5px red; }</style> <body> <p class="box">hello world</p> </body>
-
效果如下
-
text-shadow
屬性基本與box-shadow
屬性一樣,就不多舉例了
CSS 濾鏡
一、初識(shí) CSS 濾鏡
濾鏡
這兩個(gè)字我相信大家都很熟悉,平時(shí)愛(ài)自拍,拍照的同學(xué)肯定都會(huì)打開(kāi)濾鏡修飾一下圖片吧,那么CSS濾鏡也是這樣,直接用filter
屬性來(lái)修飾圖像。
二、CSS 濾鏡方法
-
blur():模糊
- 可以任何長(zhǎng)度單位,值為 0 顯示原圖,值越大越模糊
-
brightness():亮度
- 百分比,可用 0~1 代替,值為 0 顯示全黑,值為 100% 顯示原圖
-
contrast():對(duì)比度
- 百分比,可用 0~1 代替,值為 0 顯示全黑,值為 100% 顯示原圖
-
drop-shadow():陰影
-
說(shuō)明
- 與
box-shadow
屬性類似 - 沒(méi)有內(nèi)陰影效果
- 不能陰影疊加
- 與
-
代碼示例
-
/* 代碼示例 */ <style> .box1 { width: 300px; height: 300px; border: 3px solid red; box-shadow: 5px 5px 10px 0 black; } .box2 { width: 300px; height: 300px; border: 3px solid red; filter: drop-shadow(5px 5px 10px black); } </style> <body> <p class="box1"></p> <p class="box2"></p> </body>
-
-
-
grayscale():灰度
- 百分比,可用 0~1 代替,值為 0 顯示原圖,值為 100% 顯示全灰
-
hue-rotate():色相旋轉(zhuǎn)
- 角度,值為 0 顯示原圖,值為 0~360deg 減弱原圖色彩,
-
invert():反相
- 百分比,可用 0~1 代替,值為 0 顯示原圖,值為 100% 完全反轉(zhuǎn)原圖色彩
-
opacity():透明度
- 百分比,可用 0~1 代替,值為 0 顯示透明,值為 100% 顯示原圖
-
saturate():飽和度
- 百分比,可用 0~1 代替,值為 0 完全不飽和原圖,值為 100% 顯示原圖
-
sepia():褐色
- 百分比,可用 0~1 代替,值為 0 顯示原圖,值為 100% 顯示褐色
三、CSS 濾鏡的應(yīng)用
3.1 CSS濾鏡-將圖片設(shè)置為灰色
-
代碼示例
-
<style> .box { filter: grayscale(1); }</style> <body> <p class="box"> <img src="./imgs/1.jpg" alt=""> </p> </body>
-
效果如下
-
具體的濾鏡調(diào)制方法可以參照CSSgram的官網(wǎng)進(jìn)行學(xué)習(xí)
(學(xué)習(xí)視頻分享:css視頻教程、web前端教程)