自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

一篇文章帶你了解SVG 陰影

開(kāi)發(fā) 前端
所有互聯(lián)網(wǎng)的SVG濾鏡定義在元素中。元素定義短并含有特殊元素(如濾鏡)定義標(biāo)簽用來(lái)定義SVG濾鏡。

[[383895]]

注意: Internet Explorer和Safari不支持SVG濾鏡!

一、前言

defs 和 filte元素

所有互聯(lián)網(wǎng)的SVG濾鏡定義在元素中。元素定義短并含有特殊元素(如濾鏡)定義標(biāo)簽用來(lái)定義SVG濾鏡。

標(biāo)簽使用必需的id屬性來(lái)定義向圖形應(yīng)用哪個(gè)濾鏡?

二、feOffset 元素

1. 實(shí)例 1

元素是用于創(chuàng)建陰影效果。我的想法是采取一個(gè)SVG圖形(圖像或元素)并移動(dòng)它在xy平面上一點(diǎn)兒。

偏移一個(gè)矩形(帶),然后混合偏移圖像頂部(含)。

  1. <!DOCTYPE html> 
  2. <html> 
  3. <body style="background-color: aqua;"
  4.  
  5. <p><b>Note: </b>Internet Explorer and Safari do not support SVG filters yet!</p> 
  6.  
  7. <svg xmlns="http://www.w3.org/2000/svg" version="1.1"
  8. <defs> 
  9. <filter id="f1" x="0" y="0" width="200%" height="200%"
  10. <feOffset result="offOut" in="SourceGraphic" dx="20" dy="20" /> 
  11. <feBlend in="SourceGraphic" in2="offOut" mode="normal" /> 
  12. </filter> 
  13. </defs> 
  14. <rect width="90" height="90" stroke="green" stroke-width="3" fill="red" filter="url(#f1)" /> 
  15. </svg> 
  16.  
  17. </body> 
  18. </html> 

運(yùn)行效果:

代碼解析:

  • <filter>元素id屬性定義一個(gè)濾鏡的唯一名稱(chēng)。
  • <rect>元素的濾鏡屬性用來(lái)把元素鏈接到"f1"濾鏡。

2. 實(shí)例 2

現(xiàn)在,偏移圖像可以變的模糊(含 )。

代碼:

  1. <svg xmlns="http://www.w3.org/2000/svg" version="1.1"
  2. <defs> 
  3. <filter id="f1" x="0" y="0" width="200%" height="200%"
  4. <feOffset result="offOut" in="SourceGraphic" dx="20" dy="20" /> 
  5. <feGaussianBlur result="blurOut" in="offOut" stdDeviation="10" /> 
  6. <feBlend in="SourceGraphic" in2="blurOut" mode="normal" /> 
  7. </filter> 
  8. </defs> 
  9. <rect width="90" height="90" stroke="green" stroke-width="3" fill="red" filter="url(#f1)" /> 
  10. </svg> 

運(yùn)行效果

代碼解析:

  <feGaussianBlur>元素的stdDeviation屬性定義了模糊量。

3. 實(shí)例 3

現(xiàn)在,制作一個(gè)黑色的陰影。

代碼:

  1. <svg xmlns="http://www.w3.org/2000/svg" version="1.1"
  2. <defs> 
  3. <filter id="f1" x="0" y="0" width="200%" height="200%"
  4. <feOffset result="offOut" in="SourceAlpha" dx="20" dy="20" /> 
  5. <feGaussianBlur result="blurOut" in="offOut" stdDeviation="10" /> 
  6. <feBlend in="SourceGraphic" in2="blurOut" mode="normal" /> 
  7. </filter> 
  8. </defs> 
  9. <rect width="90" height="90" stroke="green" stroke-width="3" fill="red" filter="url(#f1)" /> 
  10. </svg> 

運(yùn)行效果

代碼解析:

 <feOffset>元素的屬性改為"SourceAlpha"在Alpha通道使用殘影,而不是整個(gè)RGBA像素。

4. 實(shí)例 4

現(xiàn)在為陰影涂上一層顏色。

代碼:

  1. <svg xmlns="http://www.w3.org/2000/svg" version="1.1"
  2. <defs> 
  3. <filter id="f1" x="0" y="0" width="200%" height="200%"
  4. <feOffset result="offOut" in="SourceGraphic" dx="20" dy="20" /> 
  5. <feColorMatrix result="matrixOut" in="offOut" type="matrix" values="0.2 0 0 0 0 0 0.2 0 0 0 0 0 0.2 0 0 0 0 0 1 0" /> 
  6. <feGaussianBlur result="blurOut" in="matrixOut" stdDeviation="10" /> 
  7. <feBlend in="SourceGraphic" in2="blurOut" mode="normal" /> 
  8. </filter> 
  9. </defs> 
  10. <rect width="90" height="90" stroke="green" stroke-width="3" fill="red" filter="url(#f1)" /> 
  11. </svg> 

代碼解析:

 <feColorMatrix>過(guò)濾器是用來(lái)轉(zhuǎn)換偏移的圖像使之更接近黑色的顏色。'0.2'矩陣的三個(gè)值都獲取乘以紅色,綠色和藍(lán)色通道。降低其值帶來(lái)的顏色至黑色(黑色為0)。

三、總結(jié)

本文基于Htm基礎(chǔ),主要介紹了通過(guò)SVG進(jìn)行圖像,陰影效果的呈現(xiàn),feOffset元素在實(shí)際應(yīng)用中對(duì)圖像的陰影添加不一樣的樣式 ,呈現(xiàn)不一樣的陰影層次。通過(guò)豐富的案例分析,效果圖的展示,讓讀者能夠更好理解和學(xué)習(xí)。

大家積極嘗試,有時(shí)候看到別人實(shí)現(xiàn)起來(lái)很簡(jiǎn)單,但是到自己動(dòng)手實(shí)現(xiàn)的時(shí)候,總會(huì)有各種各樣的問(wèn)題,切勿眼高手低,勤動(dòng)手,才可以理解的更加深刻。

代碼很簡(jiǎn)單,希望能夠幫助你學(xué)習(xí)。

本文轉(zhuǎn)載自微信公眾號(hào)「前端進(jìn)階學(xué)習(xí)交流」,可以通過(guò)以下二維碼關(guān)注。轉(zhuǎn)載本文請(qǐng)聯(lián)系前端進(jìn)階學(xué)習(xí)交流公眾號(hào)。

 

責(zé)任編輯:武曉燕 來(lái)源: 前端進(jìn)階學(xué)習(xí)交流
相關(guān)推薦

2020-12-08 08:09:49

SVG圖標(biāo)Web

2020-12-23 08:12:08

javascriptSVG腳本SVG元素

2021-01-01 09:18:48

SVG圖像元素

2020-12-29 09:39:38

元素屬性定位

2021-02-23 06:51:16

SVGstrokeHtml基礎(chǔ)

2021-03-26 09:57:51

SVGHtml基礎(chǔ)SVG圖像

2022-05-13 16:21:38

javascrip腳本SVG

2021-01-04 10:14:42

SVG標(biāo)簽元素

2020-12-25 09:42:51

SVGtspanSVG基礎(chǔ)

2021-02-05 18:36:15

SVG形狀屬性

2020-12-15 08:15:34

SVG元素路徑

2020-12-04 08:40:29

SVG動(dòng)畫(huà)元素

2020-12-11 08:39:14

SVG代碼剪切

2023-05-12 08:19:12

Netty程序框架

2021-06-30 00:20:12

Hangfire.NET平臺(tái)

2023-07-30 15:18:54

JavaScript屬性

2023-05-08 08:21:15

JavaNIO編程

2021-01-26 23:46:32

JavaScript數(shù)據(jù)結(jié)構(gòu)前端

2021-03-09 14:04:01

JavaScriptCookie數(shù)據(jù)

2021-06-24 09:05:08

JavaScript日期前端
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)