คุณสมบัติ backdrop-filter
คุณสมบัติ backdrop-filter อนุญาตให้ใช้ตัวกรอง (การเบลอ, การปรับคอนทราสต์, เอฟเฟกต์สี)
กับพื้นที่ที่อยู่ด้านหลังองค์ประกอบ ซึ่งสร้างเอฟเฟกต์ "กระจก" หรือ "กระจกฝ้า"
ไวยากรณ์
ตัวเลือก {
backdrop-filter: none | <ตัวกรอง> [<ตัวกรอง>]*;
}
ค่า
| ค่า | คำอธิบาย |
|---|---|
none |
ไม่ใช้ตัวกรอง (ค่าเริ่มต้น) |
blur() |
ใช้เอฟเฟกต์เบลอ (ตัวอย่าง: blur(5px)) |
brightness() |
ปรับความสว่างของพื้นหลัง (ตัวอย่าง: brightness(0.5)) |
contrast() |
ปรับคอนทราสต์ของพื้นหลัง (ตัวอย่าง: contrast(200%)) |
drop-shadow() |
เพิ่มเงาให้พื้นหลัง |
grayscale() |
แปลงพื้นหลังเป็นสีขาวดำ (ตัวอย่าง: grayscale(100%)) |
hue-rotate() |
เปลี่ยนโทนสีของพื้นหลัง (ตัวอย่าง: hue-rotate(90deg)) |
invert() |
กลับสีของพื้นหลัง (ตัวอย่าง: invert(100%)) |
opacity() |
ปรับความโปร่งแสงของพื้นหลัง (ตัวอย่าง: opacity(50%)) |
sepia() |
ใช้ซีเปียให้พื้นหลัง (ตัวอย่าง: sepia(100%)) |
saturate() |
ปรับความอิ่มตัวของสีพื้นหลัง (ตัวอย่าง: saturate(200%)) |
สามารถรวมตัวกรองหลายตัวได้โดยคั่นด้วยช่องว่าง
ตัวอย่าง . การเบลอแบบพื้นฐาน
เอฟเฟกต์เบลอพื้นหลังพื้นฐาน:
<div class="blur-example">
<div class="blur-box">
เอฟเฟกต์เบลอพื้นหลัง
</div>
</div>
.blur-example {
background: linear-gradient(135deg, #667eea, #764ba2);
padding: 40px;
height: 200px;
}
.blur-box {
backdrop-filter: blur(6px);
background-color: rgba(255, 255, 255, 0.2);
border-radius: 8px;
padding: 20px;
width: 80%;
margin: 0 auto;
text-align: center;
color: white;
font-size: 22px;
}
:
ตัวอย่าง . ตัวกรองแสงอุ่น
เอฟเฟกต์แสงสว่างอุ่นด้วยความสว่างที่เพิ่มขึ้น:
<div class="warm-light-bg">
<div class="warm-light">
เอฟเฟกต์แสงอุ่น
</div>
</div>
.warm-light-bg {
background: url('bg.png');
background-size: cover;
padding: 50px;
height: 250px;
}
.warm-light {
backdrop-filter: brightness(1.2) hue-rotate(20deg);
background-color: rgba(255, 235, 205, 0.3);
padding: 25px;
width: 70%;
margin: 20px auto;
text-align: center;
color: #333;
font-size: 24px;
}
:
ตัวอย่าง . การเบลอพร้อมมาสก์แบบไล่ระดับสี
การผสมผสานระหว่างการเบลอกับไล่ระดับสีโปร่งแสง:
<div class="gradient-mask">
<div class="mask-content">
เอฟเฟกต์มาสก์แบบไล่ระดับสี
</div>
</div>
.gradient-mask {
background: url('bg.png') center/cover;
padding: 50px;
height: 300px;
}
.mask-content {
backdrop-filter: blur(10px);
background: linear-gradient(to right, rgba(255,255,255,0.3), rgba(255,255,255,0));
padding: 30px;
width: 80%;
margin: 0 auto;
}
:
ตัวอย่าง . เอฟเฟกต์ภาพยนตร์เก่า
การผสมผสานระหว่างซีเปียกับเกรน:
<div class="old-film">
<div class="film-effect">
เอฟเฟกต์ภาพยนตร์เก่า
</div>
</div>
.old-film {
background: url('bg.png') center/cover;
padding: 40px;
height: 250px;
}
.film-effect {
backdrop-filter: sepia(80%) contrast(110%) brightness(90%);
background-color: rgba(0,0,0,0.1);
padding: 25px;
width: 70%;
margin: 20px auto;
}
:
ตัวอย่าง . ตัวกรองสีน้ำเงินเย็น
เอฟเฟกต์แสงสว่างเย็น:
<div class="cold-bg">
<div class="cold-effect">
ตัวกรองสีน้ำเงินเย็น
</div>
</div>
.cold-bg {
background: url('bg.png') center/cover;
padding: 50px;
height: 300px;
}
.cold-effect {
backdrop-filter: hue-rotate(180deg) brightness(85%);
background-color: rgba(200,230,255,0.2);
padding: 30px;
width: 75%;
margin: 0 auto;
}
:
ตัวอย่าง . คอนทราสต์สูง
เอฟเฟกต์คอนทราสต์ที่เพิ่มขึ้น:
<div class="contrast-bg">
<div class="contrast-effect">
คอนทราสต์สูง
</div>
</div>
.contrast-bg {
background: url('bg.png') center/cover;
padding: 40px;
height: 250px;
}
.contrast-effect {
backdrop-filter: contrast(200%) brightness(90%);
background-color: rgba(0,0,0,0.1);
padding: 25px;
width: 70%;
margin: 20px auto;
}
:
ตัวอย่าง . เอฟเฟกต์สีน้ำ
การเบลอแบบนุ่มกับความอิ่มตัวสีที่เพิ่มขึ้น:
<div class="watercolor-bg">
<div class="watercolor-effect">
เอฟเฟกต์สีน้ำ
</div>
</div>
.watercolor-bg {
background: url('bg.png') center/cover;
padding: 50px;
height: 300px;
}
.watercolor-effect {
backdrop-filter: blur(12px) saturate(200%);
background-color: rgba(255,255,255,0.15);
padding: 30px;
width: 80%;
margin: 0 auto;
}
:
ตัวอย่าง . เงาบนพื้นหลัง
เอฟเฟกต์เงาบนภาพพื้นหลัง:
<div class="shadow-bg">
<div class="shadow-effect">
เอฟเฟกต์เงา
</div>
</div>
.shadow-bg {
background: url('bg.png') center/cover;
padding: 40px;
height: 250px;
}
.shadow-effect {
backdrop-filter: drop-shadow(4px 4px 10px rgba(0,0,0,0.5));
background-color: rgba(255,255,255,0.2);
padding: 25px;
width: 70%;
margin: 20px auto;
}
:
ตัวอย่าง . การกลับสีเต็มรูปแบบ
การกลับสีพื้นหลังเต็มรูปแบบ:
<div class="invert-bg">
<div class="invert-effect">
การกลับสีเต็มรูปแบบ
</div>
</div>
.invert-bg {
background: url('bg.png') center/cover;
padding: 50px;
height: 300px;
}
.invert-effect {
backdrop-filter: invert(100%);
background-color: rgba(0,0,0,0.1);
padding: 30px;
width: 80%;
margin: 0 auto;
}
:
ตัวอย่าง . เอฟเฟกต์การทำให้มืด
การทำให้พื้นหลังมืดลงโดยคงความอ่านง่ายของข้อความ:
<div class="darken-bg">
<div class="darken-effect">
พื้นหลังที่มืดลง
</div>
</div>
.darken-bg {
background: url('bg.png') center/cover;
padding: 50px;
height: 300px;
}
.darken-effect {
backdrop-filter: brightness(40%);
background-color: rgba(0,0,0,0.3);
color: white;
padding: 30px;
width: 80%;
margin: 0 auto;
}
:
ตัวอย่าง . เอฟเฟกต์การทำให้เป็นสีขาวดำ
การทำให้พื้นหลังเป็นสีขาวดำเต็มรูปแบบ:
<div class="grayscale-bg">
<div class="grayscale-effect">
ตัวกรองขาวดำ
</div>
</div>
.grayscale-bg {
background: url('bg.png') center/cover;
padding: 50px;
height: 300px;
}
.grayscale-effect {
backdrop-filter: grayscale(100%);
background-color: rgba(255,255,255,0.2);
padding: 30px;
width: 80%;
margin: 0 auto;
}
:
ตัวอย่าง . เอฟเฟกต์ความอิ่มตัวสีที่เพิ่มขึ้น
การเสริมสีของพื้นหลัง:
<div class="saturate-bg">
<div class="saturate-effect">
สีที่อิ่มตัวสูง
</div>
</div>
.saturate-bg {
background: url('bg.png') center/cover;
padding: 50px;
height: 300px;
}
.saturate-effect {
backdrop-filter: saturate(300%);
background-color: rgba(255,255,255,0.1);
padding: 30px;
width: 80%;
margin: 0 auto;
}
:
ตัวอย่าง . เอฟเฟกต์ศิลปะแบบผสม
การผสมผสานตัวกรองหลายตัวสำหรับเอฟเฟกต์ศิลปะ:
<div class="artistic-bg">
<div class="artistic-effect">
การผสมผสานเชิงศิลปะ
</div>
</div>
.artistic-bg {
background: url('bg.png') center/cover;
padding: 50px;
height: 300px;
}
.artistic-effect {
backdrop-filter: blur(3px) hue-rotate(90deg) saturate(150%) contrast(120%);
background-color: rgba(255,255,255,0.15);
padding: 30px;
width: 80%;
margin: 0 auto;
color: white;
text-shadow: 0 0 5px black;
}
:
ตัวอย่าง . เอฟเฟกต์ความโปร่งแสง
การปรับความโปร่งแสงของพื้นหลัง:
<div class="opacity-bg">
<div class="opacity-effect">
การควบคุมความโปร่งแสง
</div>
</div>
.opacity-bg {
background: url('bg.png') center/cover;
padding: 50px;
height: 300px;
}
.opacity-effect {
backdrop-filter: opacity(50%);
background-color: rgba(0,0,0,0.3);
color: white;
padding: 30px;
width: 80%;
margin: 0 auto;
}
:
การรองรับโดยเบราว์เซอร์
คุณสมบัตินี้ได้รับการรองรับในเบราว์เซอร์สมัยใหม่ส่วนใหญ่ แต่อาจต้องใช้คำนำหน้า -webkit-
เพื่อความเข้ากันได้ข้ามเบราว์เซอร์แบบสมบูรณ์
ดูเพิ่มเติม
-
คุณสมบัติ
filter,
ซึ่งใช้เอฟเฟกต์กับองค์ประกอบเอง -
คุณสมบัติ
opacity,
ควบคุมความโปร่งแสงขององค์ประกอบ -
คุณสมบัติ
background-blend-mode,
กำหนดโหมดการผสมภาพพื้นหลัง