เพื่อเพิ่มเงาให้ภาพใน CSS3 ให้ใช้ค่า drop-shadow สำหรับคุณสมบัติ filter มีค่าต่อไปนี้:
- h-shadow - ระบุค่าพิกเซลสำหรับเงาแนวนอน
- v-shadow - ระบุค่าพิกเซลสำหรับเงาแนวตั้ง ค่าติดลบจะวางเงาเหนือภาพ
- blur - เพิ่มเอฟเฟกต์เบลอให้เงา
- spread - ค่าบวกทำให้เงาขยาย ค่าลบทำให้เงายุบ
- color - เพิ่มสีให้เงา
ตัวอย่าง
<!DOCTYPE html> <html> <head> <style> img.demo { filter: brightness(120%); filter: contrast(120%); filter: drop-shadow(10px 10px 10px green); } </style> </head> <body> <h1>Learn MySQL</h1> <img src="https://www.tutorialspoint.com/mysql/images/mysql-mini-logo.jpg" alt="MySQL" width="160" height="150"> <h1>Learn MySQL</h1> <img class="demo" src="https://www.tutorialspoint.com/mysql/images/mysql-mini-logo.jpg" alt="MySQL" width="160" height="150"> </body> </html>
ผลลัพธ์

ไวยากรณ์ (Syntax)
filter: drop-shadow(h-shadow v-shadow blur spread color);
ตัวอย่างเพิ่มเติม
/* เงาเบาสีดำ */ filter: drop-shadow(2px 2px 5px rgba(0,0,0,0.3)); /* เงาแดง ไม่เบลอ */ filter: drop-shadow(5px 5px 0 red); /* เงาขยายใหญ่ */ filter: drop-shadow(0 0 10px 5px blue);
หมายเหตุ: drop-shadow ต่างจาก box-shadow ที่ drop-shadow จะทำตามรูปร่างของภาพ (รวมโปร่งใส) ส่วน box-shadow จะเป็นรูปสี่เหลี่ยม