คุณสมบัติ CSS box-shadow
ถูกนำมาใช้ เงาหนึ่งหรือหลายเงาไปยังองค์ประกอบ
ในการใช้งานที่ง่ายที่สุด คุณจะระบุเฉพาะเงาแนวนอนและแนวตั้งเท่านั้น สีเริ่มต้นของเงาคือสีข้อความปัจจุบัน
ระบุเงาแนวนอนและแนวตั้ง:
div
{
box-shadow: 10px 10px;
}
ลองด้วยตัวคุณเอง →
<!DOCTYPE html>
<html>
<head>
<style>
div {
width: 300px;
height: 100px;
padding: 15px;
background-color: coral;
box-shadow: 10px 10px;
}
</style>
</head>
<body>
<h1>The box-shadow Property</h1>
<div>This is a div element with a box-shadow</div>
</body>
</html>
พารามิเตอร์ color
กำหนดสีของเงา
ระบุสีสำหรับเงา:
div
{
box-shadow: 10px 10px lightblue;
}
ลองด้วยตัวคุณเอง →
<!DOCTYPE html>
<html>
<head>
<style>
div {
width: 300px;
height: 100px;
padding: 15px;
background-color: coral;
box-shadow: 10px 10px lightblue;
}
</style>
</head>
<body>
<h1>The box-shadow Property</h1>
<div>A div element with a lightblue box-shadow</div>
</body>
</html>
พารามิเตอร์ blur
กำหนดรัศมีการเบลอ ยิ่งตัวเลขสูง เงาก็จะยิ่งเบลอมากขึ้น
เพิ่มเอฟเฟกต์เบลอให้กับเงา:
div
{
box-shadow: 10px 10px 5px lightblue;
}
ลองด้วยตัวคุณเอง →
<!DOCTYPE html>
<html>
<head>
<style>
div {
width: 300px;
height: 100px;
padding: 15px;
background-color: coral;
box-shadow: 10px 10px 5px lightblue;
}
</style>
</head>
<body>
<h1>The box-shadow Property</h1>
<div>A div element with a 5px blurred, lightblue box-shadow.</div>
</body>
</html>
พารามิเตอร์ spread
กำหนดรัศมีการแพร่กระจาย ค่าบวกจะทำให้ขนาดของเงาเพิ่มขึ้น ค่าลบจะทำให้ขนาดของเงาลดลง
กำหนดรัศมีการแพร่กระจายของเงา:
div
{
box-shadow: 10px 10px 5px 12px lightblue;
}
ลองด้วยตัวคุณเอง →
<!DOCTYPE html>
<html>
<head>
<style>
div {
width: 300px;
height: 100px;
padding: 15px;
background-color: coral;
box-shadow: 10px 10px 5px 12px lightblue;
}
</style>
</head>
<body>
<h1>The box-shadow Property</h1>
<div>A div element with a blurred, lightblue box-shadow, with a spread radius of 12px.</div>
</body>
</html>
พารามิเตอร์ inset
เปลี่ยนเงาจากเงาด้านนอก (outset) เป็นเงาด้านใน
เพิ่มพารามิเตอร์แทรก:
div
{
box-shadow: 10px 10px 5px lightblue inset;
}
ลองด้วยตัวคุณเอง →
<!DOCTYPE html>
<html>
<head>
<style>
div {
width: 300px;
height: 100px;
padding: 15px;
background-color: coral;
box-shadow: 10px 10px 5px lightblue inset;
}
</style>
</head>
<body>
<h1>The box-shadow Property</h1>
<div>A div element with a blurred, lightblue, inset box-shadow.</div>
</body>
</html>
องค์ประกอบสามารถมีได้หลายเงา:
div
{
box-shadow: 5px 5px blue, 10px 10px red, 15px 15px green;
}
ลองด้วยตัวคุณเอง →
<!DOCTYPE html>
<html>
<head>
<style>
#example1 {
border: 1px solid;
padding: 10px;
box-shadow: 5px 5px blue, 10px 10px red, 15px 15px green;
margin: 20px;
}
#example2 {
border: 1px solid;
padding: 10px;
box-shadow: 5px 5px 8px blue, 10px 10px 8px red, 15px 15px 8px green;
margin: 20px;
}
</style>
</head>
<body>
<h1>Multiple Shadows</h1>
<div id="example1">
<h2>Multiple shadows</h2>
<p>box-shadow: 5px 5px blue, 10px 10px red, 15px 15px green:</p>
</div>
<br>
<div id="example2">
<h2>Multiple shadows with blur effect</h2>
<p>box-shadow: 5px 5px 8px blue, 10px 10px 8px red, 15px 15px 8px green:</p>
</div>
</body>
</html>
คุณยังสามารถใช้คุณสมบัติ box-shadow
เพื่อสร้างการ์ดที่เหมือนกระดาษ:
January 1, 2021
Hardanger, Norway
div.card
{
width: 250px;
box-shadow: 0 4px 8px 0 rgba(0, 0,
0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
text-align:
center;
}
ลองเลย (การ์ดข้อความ) →
<!DOCTYPE html>
<html>
<head>
<style>
div.card {
width: 250px;
box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
text-align: center;
}
div.header {
background-color: #4CAF50;
color: white;
padding: 10px;
font-size: 40px;
}
div.container {
padding: 10px;
}
</style>
</head>
<body>
<h1>Create Cards</h1>
<p>The box-shadow property can be used to create paper-like cards:</p>
<div class="card">
<div class="header">
<h1>1</h1>
</div>
<div class="container">
<p>January 1, 2021</p>
</div>
</div>
</body>
</html>
ลองเลย (การ์ดรูปภาพ) →
<!DOCTYPE html>
<html>
<head>
<style>
div.polaroid {
width: 250px;
box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
text-align: center;
}
div.container {
padding: 10px;
}
</style>
</head>
<body>
<h1>Create Polaroid Images</h1>
<p>The box-shadow property can be used to create polaroid images:</p>
<div class="polaroid">
<img src="rock600x400.jpg" alt="Norway" style="width:100%">
<div class="container">
<p>Hardanger, Norway</p>
</div>
</div>
</body>
</html>
ตารางต่อไปนี้แสดงรายการคุณสมบัติเงาของ CSS:
เพิ่มเงาอย่างน้อยหนึ่งเงาให้กับองค์ประกอบ
เพิ่มเงาหนึ่งหรือหลายเงาให้กับข้อความ