搜尋
首頁web前端css教學css利用box-shadow實現曲邊陰影與翹邊陰影實例詳解

這篇文章主要介紹了css box-shadow實現曲邊陰影與翹邊陰影,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟著小編過來看看吧

大家都知道box-shadow是h5新增屬性,用來實現盒子邊緣有陰影的效果,但經常會看見許多場景裡陰影的樣式各種各樣,並不是簡單的四周有陰影的效果,它們是怎麼實現的呢,今天就跟大家分享兩種陰影實現的方法。

一、曲邊陰影

效果圖如下:它不僅是四周有陰影,下部還有一層曲邊的陰影,它的原理其實很簡單,首先盒子本身有陰影,然後在使用另一個有陰影的盒子重疊形成效果圖裡的曲邊陰影。

先說box-shadow的使用語法,它支援多個陰影的書寫,中間用逗號隔開,如下

建立一個盒子,使用box-shadow給盒子一個x軸和y軸方向都是零暈染半徑為10px的外陰影和內陰影。


style{
      .box1{
                width: 400px;
                height: 200px;
                background: white;
                border: 1px solid lightgrey;
                margin: 100px auto;
                text-align: center;
                line-height: 200px;
                box-shadow: 0 0 10px rgba(0,0,0,0.3), 0 0 10px rgba(0,0,0,0.3) inset;
        }
}
body{
      <p class="box1">
      <span>曲边阴影</span>
      </p>
}

使用after偽類選擇器在box1子集的後面增加一個虛擬的標籤,由於是一個虛擬標籤,瀏覽器不能識別,需要定義display屬性,給這個標籤也加上陰影,由於是曲面的,所以需要設定border-radius使它有個弧度。然後使用定位將虛擬標籤與原始盒子重疊,並使用z-index改變層級,使它在p的下方。程式碼如下


.box1::after{
                display: block;  //必须写
                content: "";     //必须写
                z-index: -1;
                width: 390px;
                height: 150px;
                background: red;
                position: absolute;
                bottom: 0;
                left: 4px;
                border-radius: 30px/10px;
                box-shadow: 0 8px 10px rgba(0,0,0,0.3);
                
            }

當沒有定位時,兩個盒子的排列方式如下:

##在定位後就實現了曲邊陰影:結果圖如下:

二、翹邊陰影


二、翹邊陰影


原理與曲邊陰影一樣,使用偽類選擇器::afteryu , ::before增加兩個虛擬標籤,使用陰影的重疊實現翹邊陰影。

程式碼如下:

.box2::after,.box2::before{
                display: block;
                content: "";
                z-index: -1;
                width: 170px;
                height: 240px;
                background: red;
                position: absolute;
                bottom: 20px;
                left: 38px;
                box-shadow: 30px 10px 40px rgba(0,0,0,0.5); 
                transform: skewX(-15deg);   
            }
            .box2::before{
                box-shadow: -20px 10px 40px rgba(0,0,0,0.5);    
                transform: skewX(15deg);    
            }

為了方便我們看,給了紅色背景,沒改變層級時結果如下:

## ####調整兩個盒子的層級,效果如下:############

以上是css利用box-shadow實現曲邊陰影與翹邊陰影實例詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
引入NetLify分析引入NetLify分析Apr 19, 2025 am 10:07 AM

您在附帶項目上工作一段時間。您認為它很酷!您決定將其釋放到世界上。然後……順利進行。否則進展不順利。等待,

五星級評分的五種方法五星級評分的五種方法Apr 19, 2025 am 10:04 AM

在喜歡和社會統計的世界中,評論是留下反饋的非常重要的方法。用戶通常喜歡以前知道他人的意見

如果您不知道CSS,哪些CSS很棒,這是最有意義的?如果您不知道CSS,哪些CSS很棒,這是最有意義的?Apr 19, 2025 am 09:56 AM

彼得·保羅(Peter-Paul)發布了這個問題:

用剪貼路徑動畫用剪貼路徑動畫Apr 19, 2025 am 09:52 AM

剪輯路徑是我們通常知道在那裡的CSS屬性之一,但出於任何原因可能不會經常到達。從某種意義上說有點令人生畏

將GraphQL操場與Gatsby一起使用將GraphQL操場與Gatsby一起使用Apr 19, 2025 am 09:51 AM

我假設你們中的大多數人已經聽說過蓋茨比,至少很鬆散地知道,這基本上是一個用於React站點的靜態站點生成器。通常

類型或測試:為什麼不呢?類型或測試:為什麼不呢?Apr 19, 2025 am 09:50 AM

時不時地,關於鍵入JavaScript的價值的辯論會引起辯論。 “只寫更多測試!”大喊一些對手。 “用類型替換單位測試!”

GIT的圖形用戶界面GIT的圖形用戶界面Apr 19, 2025 am 09:46 AM

如今,Lemme匯集了Guis的主要參與者。

滾動懶惰的提示滾動懶惰的提示Apr 19, 2025 am 09:44 AM

您可能已經聽到(甚至發出電話)說:“我們可以使用懶惰的加載!”在尋找一種纖細的網頁時,請使用。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱工具

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SublimeText3 英文版

SublimeText3 英文版

推薦:為Win版本,支援程式碼提示!

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具

VSCode Windows 64位元 下載

VSCode Windows 64位元 下載

微軟推出的免費、功能強大的一款IDE編輯器