成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

巧用濾鏡實現高級感拉滿的文字快閃切換效果

開發 前端
今天并非是想用 CSS 實現上述的的效果。在嘗試的過程中,我發現了另外一類能夠使用 CSS 非常輕松實現文字快閃動畫,運用了blur() 濾鏡和 contrast() 濾鏡產生的融合效果。

[[434029]]

今天偶然看到這樣一類很有意思的文字快閃動畫:

圖片

這類文字快閃切換效果運用得當的話,能比較好的吸引用戶的眼球。

當然,今天并非是想用 CSS 實現上述的的效果。在嘗試的過程中,我發現了另外一類能夠使用 CSS 非常輕松實現文字快閃動畫,運用了blur() 濾鏡和 contrast() 濾鏡產生的融合效果,類似于這樣:

圖片

這個技巧也在多篇文章就提及,本文再簡述下。

blur 濾鏡混合 contrast 濾鏡產生融合效果

本文的重點,模糊濾鏡疊加對比度濾鏡產生的融合效果。單獨將兩個濾鏡拿出來,它們的作用分別是:

  1. filter: blur():給圖像設置高斯模糊效果。
  2. filter: contrast():調整圖像的對比度。

但是,當他們“合體”的時候,產生了奇妙的融合現象。

先來看一個簡單的例子:

圖片

CodePen Demo -- filter mix between blur and contrast[1]

仔細看兩圓相交的過程,在邊與邊接觸的時候,會產生一種邊界融合的效果,通過對比度濾鏡把高斯模糊的模糊邊緣給干掉,利用高斯模糊實現融合效果。

上述效果的實現基于兩點:

  1. 圖形是在被設置了 filter: contrast() 的畫布背景上進行動畫的
  2. 進行動畫的圖形被設置了 filter: blur()( 進行動畫的圖形的父元素需要是被設置了 filter: contrast() 的畫布)

當然,背景色不一定是白色,我們稍稍修改上面的Demo,簡單的示意圖如下:

使用 blur/contrast 濾鏡實現文字的切換

利用上述的技巧,我們可以實現文字的融合效果,像是這樣:

這樣,利用這個技巧,我們可以巧妙構思一下動畫:

  1. 多個文字按順序依次出現(利用 animation-delay 進行控制處理)
  2. 做到上一個文字消失的同時,下一個文字出現
  3. 疊加上上述的濾鏡即可

核心代碼如下:

  1. <div class="g-container"
  2.   <div class="word">iPhone</div> 
  3.   <div class="word">13</div> 
  4.   <div class="word">Pro</div> 
  5.   <div class="word">強得很!</div> 
  6. </div> 
  1. @import url('https://fonts.googleapis.com/css2?family=Montserrat&display=swap'); 
  2.  
  3. $speed: 8s; 
  4. $wordCount: 4; 
  5.  
  6. .g-container { 
  7.     position: relative
  8.     width: 100vw; 
  9.     height: 100vh; 
  10.     background: #000; 
  11.     font-family: 'Montserrat', sans-serif; 
  12.     color: #fff; 
  13.     font-size: 120px; 
  14.     filter: contrast(15); 
  15. .word { 
  16.     position: absolute
  17.     top: 50%; 
  18.     left: 50%; 
  19.     transform: translate(-50%, -50%); 
  20.     animation: change $speed infinite ease-in-out
  21.  
  22.     @for $i from 0 to $wordCount { 
  23.         &:nth-child(#{$i + 1}) { 
  24.             animation-delay: ($speed / ($wordCount + 1) * $i) - $speed; 
  25.         } 
  26.     } 
  27.  
  28. @keyframes change { 
  29.     0%, 
  30.     5%, 
  31.     100% { 
  32.         filter: blur(0px); 
  33.         opacity: 1; 
  34.     } 
  35.     50%, 
  36.     80% { 
  37.         filter: blur(80px); 
  38.         opacity: 0; 
  39.     } 

整段代碼,核心需要關注 @keyframes change 這個動畫,我們通過順序給文字添加上這個動畫(也就是利用 animation-delay 順序添加了延時)實現了上一個文字消失的過程下一個文字顯示的效果。

上述的 .g-container 添加了這樣一句代碼 -- filter: contrast(15),去掉這句的話,效果是這樣的:

加上這句關鍵的代碼 -- filter: contrast(15),整個效果就如一開始的題圖所示:

CodePen Demo -- 純 CSS 實現文字融合快閃切換效果[2]

整個動畫的兩個核心關鍵點:

  1. 利用了 blur 濾鏡混合 contrast 濾鏡產生融合效果
  2. 在上一個文字消失的過程中,顯示下一個文字,以此產生當前展示文字是由上個文字演變而來的效果

由此,你可以通過 HTML 控制文字的條數、改變 SASS 變量中表示動畫時長的 $speed 和文字條數的 $wordCount 以及最終 @keyframes change 里面的參數,不斷去調整優化你要的效果。演變出各種文字快閃效果。

最后

好了,本文到此結束,希望本文對你有所幫助 :)

參考資料

[1]CodePen Demo -- filter mix between blur and contrast:

https://codepen.io/Chokcoco/pen/QqWBqV

[2]CodePen Demo -- 純 CSS 實現文字融合快閃切換效果:

https://codepen.io/Chokcoco/pen/xxLjdmz

 

責任編輯:姜華 來源: iCSS前端趣聞
相關推薦

2021-11-15 07:45:06

CSS 技巧背景光動畫

2023-05-26 07:08:05

CSS模糊實現文字

2021-08-30 06:20:39

CSS 技巧3D 效果

2022-01-07 07:35:28

CSS 技巧磨砂玻璃

2010-09-07 14:53:45

Chroma屬性CSS

2022-03-31 07:46:17

CSS動畫技巧

2010-09-13 14:09:35

CSS文字

2023-01-29 08:00:00

Instagram濾鏡圖片編輯

2018-04-16 14:39:10

Vue輪播切換

2025-03-31 08:40:00

微服務OSS適配器

2024-01-12 17:06:50

字節面試題目

2023-05-18 09:25:20

background花式文字效果

2021-09-28 06:00:01

BackgroundCSS技巧

2011-05-31 09:23:58

Android Activity

2021-12-06 15:10:01

鴻蒙HarmonyOS應用

2021-09-28 08:26:06

CSS 技巧文字鏤空波浪
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产成人av在线播放 | 亚洲午夜av久久乱码 | 激情婷婷 | 在线观看深夜视频 | 午夜精品视频在线观看 | 久久国产精品久久国产精品 | 超碰男人天堂 | www国产精 | 香蕉91| 91麻豆精品国产91久久久久久久久 | 伊人激情综合网 | 久久国产精品72免费观看 | 在线观看中文字幕一区二区 | 91九色porny首页最多播放 | 日韩精品二区 | 久久免费小视频 | 91久久精品日日躁夜夜躁国产 | www.国产91| 91看片官网| 亚洲精品一区在线 | 国产探花在线精品一区二区 | 大乳boobs巨大吃奶挤奶 | 久久久久国产一区二区三区 | 国产欧美精品 | 亚洲一区二区在线视频 | 亚洲视频中文字幕 | 精品免费国产一区二区三区四区 | 欧美a级成人淫片免费看 | 噜噜噜色网| 成人免费视频网站在线观看 | 久久精品国产99国产精品 | 中文字幕精品一区 | 亚洲日韩中文字幕一区 | 免费视频一区二区三区在线观看 | 国产精品jizz在线观看老狼 | 国产一区二区日韩 | 精品一区二区电影 | 午夜精品久久久久久久99黑人 | av手机在线播放 | 欧美精品在线视频 | 精品国产乱码一区二区三区a |