CSS設計:活用box-shadow與偽元素打造多層次邊框與視覺效果

更新 發佈閱讀 5 分鐘

在網頁設計中,我們常常需要為元素添加邊框裝飾。雖然基本的border屬性很實用,但當我們需要更複雜、更具層次感的裝飾時,就會想到box-shadow偽元素::before/::after)的美好。

本文將探討如何利用這兩種技術來實現一些巧妙的視覺效果。

💡 一、深入理解 box-shadow 的多層疊加

box-shadow 不僅僅用於製作陰影,它還能模擬多層邊框效果,而且可以控制每一層的顏色、大小和模糊度。

當我們使用外擴散半徑(第四個值,spread-radius)且不設定模糊半徑(第三個值為 0)時,box-shadow 就能變成一個清晰的彩色邊框。

範例分析:疊加邊框與遮蓋效果

透過設定多組 box-shadow 數值,可以利用多層疊加來製作豐富的邊框:

box-shadow: 
0 0 0 5px #fff, /* 第一層:白色,外擴 5px */
0 0 0 10px #f39c12; /* 第二層:橘色,外擴 10px */
  • 執行順序box-shadow 屬性會按照撰寫的順序從前到後進行疊加渲染。
    也就是說,
    首先,一個橘色的實心「邊框」向外擴散了 10px(第二層)。
    接著,一個白色的實心「邊框」向外擴散了 5px(第一層)。

由於第一層的白色陰影只擴散了 5px,它會完全覆蓋掉第二層橘色陰影的內側 5px 區域,從而形成中空邊框的效果。

最終效果:

vocus|新世代的創作平台
  • 結論: 通過將較小的白色陰影放在前面,我們成功地在主體元素周圍創建了一個兩層、不同顏色的裝飾性邊框。
  • 然而,當網頁具有背景圖片時, 0 0 5px #fff, 的白色部分會遮擋住背景圖片,在視覺上非常的突兀!此時,我們可以透過偽元素製作邊框來解決此問題。

📐 二、偽元素 (::after) 實現精準的外部描邊

當遇到如上文所述的具有背景圖片的情況時,由於使用box-shadow製作的中空邊框必須一層一層向外堆疊,以透過遮擋的方式來實現中空邊線效果,使得背景圖片也會一同被遮擋。此時,該輪到偽元素 (::after)出場了。

範例分析:圓形元素的外部描邊

此範例透過在一個圓形元素的外部添加一個固定尺寸的偽裝元素,來實現中空邊線效果:

CSS

.circle{
position: relative;
}
.circle::after{
content: "";
width: 210px; /* 外部描邊的尺寸 */
height: 210px;
border: 5px solid #D0104C; /* 描邊樣式 */
border-radius: 50%;
position: absolute;left: 50%;
top: 50%;
transform: translate(-50%, -50%);
}
  • 主體尺寸190px x 190px
  • 偽元素尺寸210px x 210px
  • 偽元素邊線尺寸10px

因此,可以實現外側邊框與內側圓形元素之間具有20px的間距,且最外側具有10px寬的邊框效果,具體效果如下:


為什麼選擇偽元素而不是 box-shadow

  1. 獨立尺寸控制:偽元素的尺寸 (210px) 以及邊線尺寸(10px)是獨立設定的,因此可以更直覺地改變邊框與主元素之間的間距、邊框尺寸、或者可以進一步添加動畫效果。
  2. 中空邊框:使用 border 屬性可以確保邊框為精準的線條,而不是 box-shadow 透過疊加方式模擬出來的「實心」陰影,且因此,後方的背景圖片不會被遮擋。

這種做法非常適合在元素周圍添加一個與內容分離的、具備獨立行為(例如動畫、模糊)的裝飾性邊框。


🌈 番外篇:box-shadow 製作半圓形彩虹

偽元素有數量限制(::after、::before),但box-shadow沒有極限!既然 box-shadow 這麼強大,我們就來玩點有趣的:使用它來製作一個彩虹!

完成了一個可愛的彩虹!


希望這篇文章能幫助您在使用 box-shadow 的疊加邏輯或者使用偽元素製作裝飾性邊框的應用,感謝收看!

留言
avatar-img
dizzydog的沙龍
4會員
19內容數
親愛的訪客您好!我是 dizzydog,一位熱衷於前端技術的工程師。這個部落格是我的數位筆記本,記錄著我在程式開發路上的各種發現、挑戰與突破。我相信「輸出」是最有效的學習方式,透過清晰地表達所學,不僅能加深自己的理解,也能幫助其他走在相同道路上的開發者。 歡迎您在這裡探索以及交流。
你可能也想看
Thumbnail
之所以會開始成為Wix網頁設計師,是因為原本的工作需要架設一個網站,所以上網找資料自學,結果發現Wix超好用、超美,並從此愛上了Wix。在用了一陣子之後也頗有心得,臨機一動想說不如就來接案看看,於是就架一個接案網站放在網路上,心想如果有人找上門就接看看,但如果沒人也沒差,沒想到陸陸續續都一直有客戶
Thumbnail
之所以會開始成為Wix網頁設計師,是因為原本的工作需要架設一個網站,所以上網找資料自學,結果發現Wix超好用、超美,並從此愛上了Wix。在用了一陣子之後也頗有心得,臨機一動想說不如就來接案看看,於是就架一個接案網站放在網路上,心想如果有人找上門就接看看,但如果沒人也沒差,沒想到陸陸續續都一直有客戶
Thumbnail
本文分析導演巴里・柯斯基(Barrie Kosky)如何運用極簡的舞臺配置,將布萊希特(Bertolt Brecht)的「疏離效果」轉化為視覺奇觀與黑色幽默,探討《三便士歌劇》在當代劇場中的新詮釋,並藉由舞臺、燈光、服裝、音樂等多方面,分析該作如何在保留批判核心的同時,觸及觀眾的觀看位置與人性幽微。
Thumbnail
本文分析導演巴里・柯斯基(Barrie Kosky)如何運用極簡的舞臺配置,將布萊希特(Bertolt Brecht)的「疏離效果」轉化為視覺奇觀與黑色幽默,探討《三便士歌劇》在當代劇場中的新詮釋,並藉由舞臺、燈光、服裝、音樂等多方面,分析該作如何在保留批判核心的同時,觸及觀眾的觀看位置與人性幽微。
Thumbnail
通过美学背景和主题来改造你的数字空间。从 AI 生成艺术到精选系列,我们提供一切你需要的个性化内容。 功能工具 AI 背景生成器 使用我们的 AI 背景生成器创建独特的自定义设计。当你需要完全符合你想象的原创作品时,这是最佳选择。 美学生成器 设计完整的主题组合。试试我们的美学生成器,
Thumbnail
通过美学背景和主题来改造你的数字空间。从 AI 生成艺术到精选系列,我们提供一切你需要的个性化内容。 功能工具 AI 背景生成器 使用我们的 AI 背景生成器创建独特的自定义设计。当你需要完全符合你想象的原创作品时,这是最佳选择。 美学生成器 设计完整的主题组合。试试我们的美学生成器,
Thumbnail
我回來了!!!其實前兩天就回到德國,不知道為什麼現在回到德國開始有種安心的感覺,ICE一如既往的遲到,在瑞士的時候我也常擔心火車遲到,後來想想,我在瑞士XD,不過ICE上什麼都有,手機插座、安全的公共網路,我想德國政府令人安心,尤其德國鐵路除了誤點之外,價格跟品質都是無可挑剔,特別在49歐月票出來之
Thumbnail
我回來了!!!其實前兩天就回到德國,不知道為什麼現在回到德國開始有種安心的感覺,ICE一如既往的遲到,在瑞士的時候我也常擔心火車遲到,後來想想,我在瑞士XD,不過ICE上什麼都有,手機插座、安全的公共網路,我想德國政府令人安心,尤其德國鐵路除了誤點之外,價格跟品質都是無可挑剔,特別在49歐月票出來之
Thumbnail
背景:從冷門配角到市場主線,算力與電力被重新定價   小P從2008進入股市,每一個時期的投資亮點都不同,記得2009蘋果手機剛上市,當時蘋果只要在媒體上提到哪一間供應鏈,隔天股價就有驚人的表現,當時光學鏡頭非常熱門,因為手機第一次搭上鏡頭可以拍照,也造就傳統相機廠的殞落,如今手機已經全面普及,題
Thumbnail
背景:從冷門配角到市場主線,算力與電力被重新定價   小P從2008進入股市,每一個時期的投資亮點都不同,記得2009蘋果手機剛上市,當時蘋果只要在媒體上提到哪一間供應鏈,隔天股價就有驚人的表現,當時光學鏡頭非常熱門,因為手機第一次搭上鏡頭可以拍照,也造就傳統相機廠的殞落,如今手機已經全面普及,題
Thumbnail
C通常一部電影 網路影集 小說 漫畫 電玩 在最後一集或最後結局 可以把感動觀眾到哭的 結局劇情 可能有哪幾種劇情? 幸福課程 幸福教練黃老師 潮資訊媒體 社群編輯 在影視作品和文學作品的最後一集或結局, 有一些常見的劇情元素和情感觸發方式, 可以感動觀眾並引起哭泣
Thumbnail
C通常一部電影 網路影集 小說 漫畫 電玩 在最後一集或最後結局 可以把感動觀眾到哭的 結局劇情 可能有哪幾種劇情? 幸福課程 幸福教練黃老師 潮資訊媒體 社群編輯 在影視作品和文學作品的最後一集或結局, 有一些常見的劇情元素和情感觸發方式, 可以感動觀眾並引起哭泣
Thumbnail
The three basic samples we mention here are just to help you make the first move. It's not that difficult. It's quite easy to get started.
Thumbnail
The three basic samples we mention here are just to help you make the first move. It's not that difficult. It's quite easy to get started.
Thumbnail
5 月將於臺北表演藝術中心映演的「2026 北藝嚴選」《海妲・蓋柏樂》,由臺灣劇團「晃晃跨幅町」製作,本文將以從舞台符號、聲音與表演調度切入,討論海妲・蓋柏樂在父權社會結構下的困境,並結合榮格心理學與馮.法蘭茲對「阿尼姆斯」與「永恆少年」原型的分析,理解女人何以走向精神性的操控、毀滅與死亡。
Thumbnail
5 月將於臺北表演藝術中心映演的「2026 北藝嚴選」《海妲・蓋柏樂》,由臺灣劇團「晃晃跨幅町」製作,本文將以從舞台符號、聲音與表演調度切入,討論海妲・蓋柏樂在父權社會結構下的困境,並結合榮格心理學與馮.法蘭茲對「阿尼姆斯」與「永恆少年」原型的分析,理解女人何以走向精神性的操控、毀滅與死亡。
Thumbnail
這是一場修復文化與重建精神的儀式,觀眾不需要完全看懂《遊林驚夢:巧遇Hagay》,但你能感受心與土地團聚的渴望,也不急著在此處釐清或定義什麼,但你的在場感受,就是一條線索,關於如何找著自己的路徑、自己的聲音。
Thumbnail
這是一場修復文化與重建精神的儀式,觀眾不需要完全看懂《遊林驚夢:巧遇Hagay》,但你能感受心與土地團聚的渴望,也不急著在此處釐清或定義什麼,但你的在場感受,就是一條線索,關於如何找著自己的路徑、自己的聲音。
Thumbnail
我的開發環境是win11,python是3.10.7版本,kivy我設定在2.1.0版本,編碼的工具是Visual Studio Code(VS Code),本篇說明如何加入 Button物件基本功能,並自由地改變其背景顏色(background _color)。
Thumbnail
我的開發環境是win11,python是3.10.7版本,kivy我設定在2.1.0版本,編碼的工具是Visual Studio Code(VS Code),本篇說明如何加入 Button物件基本功能,並自由地改變其背景顏色(background _color)。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News