讓我們為投影準備一個簡單的HTML元素:
然后添加CSS:
輸出結果是三個框,通過調用每個框的ID可以很容易地放置陰影。要添加陰影,讓我們將屬性box-shadow賦予框1:
我們提供三個參數。前兩個參數是offset-x和offset-y。兩者都確定投影的位置。相對于元素左上角的位置給出偏移量。偏移x處的正值表示將陰影向右引導,偏移y處的正值表示將陰影向下引導。
第三個參數是所需的陰影顏色。盡管這里我們使用elements <div>,但是屬性box-shadow可以應用于所有其他HTML元素。
如果想要陰影看起來更逼真,則可以使用blur-radius參數。此參數將設置我們如何給予陰影模糊效果。讓我們將其應用于方框2:
注意第三個參數,該值4px調整應用于投影的模糊半徑。
如果要調整陰影的大小,我們可以添加參數spread-radius以使陰影擴大或縮小。讓我們8px在框2中添加一個半徑擴展:
注意參數的順序。
我們甚至可以一次將多個陰影組合到一個元素中。讓框3應用藍色和綠色投影:
我們可以用參數制作一個向內的陰影inset。參數inset可以寫在屬性的開頭或結尾box-shadow。以下示例使用elements blockquote。
我們還可以添加一些模糊和散布以增強陰影:
使用properties box-shadow,我們可以為所創建的網頁提供陰影,從而可以提供良好的3D照明效果。
css陰影效果是我們經常使用的一個css屬性,但你有仔細了解過它嗎?是不是用的時候直接從藍湖上復制過來就行了,那你了解它的每個參數嗎?用陰影又能實現哪些好看的效果呢?來看一看我收集總結的css陰影知識吧,可能不全面,歡迎補充。
語法
box-shadow: x-shadow y-shadow blur spread color inset;
x-shadow: 必需的,水平陰影的偏移量,可以為負值,下圖表示了在其他參數相同,x-shadow不同情況下的不同表現
box-shadow: x-shadow 0 10px 10px rgba(0, 0, 0, .2);
1.png
y-shadow: 必需的,水平陰影的偏移量,可以為負值,下圖表示了在其他參數相同,y-shadow不同情況下的不同表現
box-shadow: 0 y-shadow 10px 10px rgba(0, 0, 0, .2);
2.png
blur: 可選的,模糊距離,不支持負數,下圖表示了在其他參數相同,blur不同情況下的不同表現
box-shadow: 0 0 blur 10px rgba(0, 0, 0, .2);
3.png
spread: 可選的,陰影的擴展半徑,陰影的原理其實就是復制一個當前元素出來,這個屬性就是控制的復制出來的元素的半徑,一定要記好了啊,支持負數,如果為負數,復制出來的元素就會比原元素小,下圖表示了在其他參數相同,spread不同情況下的不同表現
box-shadow: 0 0 10px spread rgba(0, 0, 0, .2);
4.png
color:可選的,顏色值,支持#000000格式或者rgb(0,0,0)格式或者rgba(0,0,0,.2)格式,下面展示了陰影對幾種顏色格式的支持
box-shadow: 0 0 10px 10px color;
5.png
inset:可選的,內陰影,下面是使用了此參數的效果展示
box-shadow: 0 0 10px 5px rgba(0, 0, 0, .5) inset;
6.png
css3的陰影支持多重陰影,只要將每個陰影屬性用逗號隔開即可,用法如下
.box15 {
border-radius: 50%;
box-shadow:
-20px 0 20px 5px rgba(213, 255, 145, 0.5),
0px -20px 20px 5px rgba(145, 255, 191, 0.5),
20px 0 20px 5px rgba(82, 255, 220, 0.5),
0 20px 20px 5px rgba(239, 255, 91, 0.5);
}
7.png
以上就是對css陰影屬性的詳細介紹及展示
css陰影的一大作用就是使邊緣變得柔和,使之看起來不那么生硬,比如我們在做一些有光影效果的圖片或者小動畫時就能用到,下面展示一下用css繪制一個夜空中的月亮
8.png
二維平面加入一點點陰影可以很好的營造出立體效果,這一點也被很多網站使用,比如小米官網
9.gif
甚至我們可以用它來做一個立體的按鈕
.box19 {
width: 100px;
height: 30px;
background: #89d444;
line-height: 30px;
color: #fff;
user-select: none;
box-shadow: 0px 8px 0 0 #479a48,
0 10px 5px 0 rgba(0, 0, 0, .5);
border-radius: 5px;
transform: translateY(-8px);
}
.box19:active {
transform: translateY(0);
box-shadow: 0 0
}
12.gif
對,你沒有看錯,利用css的多重陰影屬性,你甚至,可以畫出一幅畫來,雖然幾乎沒有人會這么做,不過幾乎不等于沒有,某位大神就用css的陰影效果畫出了一個蒙娜麗莎
這是地址https://codepen.io/jaysalvat/pen/kazzOj
11.png
經實測,box-shadow 是支持 transion 過渡效果的
13.gif
下面是我自己瞎搞的
14.gif
至于怎么用這個做出更好看的效果,就看各位大佬的發揮了,本篇文章就到這里,本文同步發布至公眾號百里青山,轉載至其他平臺請先征得同意(頭條站內可直接轉發)
用CSS3,你可以為文本和元素添加陰影。
表中的數字指定完全支持該屬性的第一個瀏覽器版本。
數字后面的 -webkit- 或者 -moz- 使用時需要指定前綴。
屬性 | Chrome | Firefox | Safari | Opera | IE |
---|---|---|---|---|---|
text-shadow | 4.0 | 10.0 | 3.5 | 4.0 | 9.5 |
box-shadow | 10.0 4.0 -webkit- | 9.0 | 4.0 3.5 -moz- | 5.1 3.1 -webkit- | 10.5 |
CSS代碼:
<!DOCTYPE CSS>
<CSS lang="en">
<head>
<meta charset="UTF-8">
<title>項目</title>
</head>
<body>
<h1>文本陰影效果!</h1>
<p><b>注意:</b> IE9和更早的版本, 不支持text-shadow屬性.</p>
</body>
</CSS>
CSS3 text-shadow
屬性應用陰影到文本上.
在簡單的用法, 你可以在水平方向設置陰影(2px)和垂直方向設置陰影(2px):
h1 {
text-shadow: 2px 2px;
}
添加一個顏色到陰影:
h1 {
text-shadow: 2px 2px red;
}
顯示一個帶有黑色陰影的白色文本:
h1 {
color: white;
text-shadow: 2px 2px 4px #000000;
}
下面的例子顯示了紅色霓虹燈的陰影:
h1 {
text-shadow: 0 0 3px #FF0000;
}
要在文本中添加多個陰影,可以添加逗號分隔的陰影列表。
下面的實例顯示了一個紅色和藍色的霓虹燈陰影:
h1 {
text-shadow: 0 0 3px #FF0000, 0 0 5px #F00000;
}
下面實例顯示了一個白色文本帶有黑色,藍色和深藍色陰影:
h1 {
text-shadow: 0 0 3px #FF0000, 0 0 5px #0000FF;
}
CSS3 box-shadow
屬性應用陰影到元素上.
在最簡單的用法中,只指定水平陰影和垂直陰影:
一個黃色的
div {
width: 300px;
height: 100px;
padding: 15px;
background-color: yellow;
box-shadow: 10px 10px;
}
下一步,添加一個顏色到陰影,對陰影添加模糊效果:
一個黃色的
div {
width: 300px;
height: 100px;
padding: 15px;
background-color: yellow;
box-shadow: 10px 10px 5px grey;
}
添加陰影到 ::before 和 ::after 偽類中, 來創建一個有趣的效果。
<!DOCTYPE CSS>
<CSS lang="en">
<head>
<meta charset="UTF-8">
<title>項目</title>
<style>
#boxshadow {
position: relative;
-moz-box-shadow: 1px 2px 4px rgba(0, 0, 0,0.5);
-webkit-box-shadow: 1px 2px 4px rgba(0, 0, 0, .5);
box-shadow: 1px 2px 4px rgba(0, 0, 0, .5);
padding: 10px;
background: white;
}
/* Make the image fit the box */
#boxshadow img {
width: 100%;
border: 1px solid #8a4419;
border-style: inset;
}
#boxshadow::after {
content: '';
position: absolute;
z-index: -1; /* hide shadow behind image */
-webkit-box-shadow: 0 15px 20px rgba(0, 0, 0, 0.3);
-moz-box-shadow: 0 15px 20px rgba(0, 0, 0, 0.3);
box-shadow: 0 15px 20px rgba(0, 0, 0, 0.3);
width: 70%;
left: 15%; /* one half of the remaining 30% */
height: 100px;
bottom: 0;CSS
}
</style>
</head>
<body>
<div id="boxshadow">
<img src="img/fy_indexBg.jpg" alt="Norway" width="600" height="400">
</div>
</body>
</CSS>
本文基于CSS基礎,使用CSS語言。介紹了有關CSS陰影效果的應用,從基礎的文本陰影入手, 對CSS常見的陰影表示效果都做了一一的講解。通過一個個實例的演示,實例運行的效果圖。希望能夠幫助你更好的學習CSS。
想學習更多Python網絡爬蟲與數據挖掘知識,可前往專業網站:http://pdcfighting.com/
*請認真填寫需求信息,我們會在24小時內與您取得聯系。