DevToolPal
ไทย

เครื่องมือสร้าง CSS Box Shadow

ออกแบบเงา CSS ด้วยภาพ: ซ้อนเงาหลายชั้น ปรับระยะเลื่อน ความเบลอ การขยาย สี และ inset ดูตัวอย่างสด มีพรีเซ็ต และ CSS พร้อมคัดลอก

ทำงานในเครื่อง ไม่มีการอัปโหลด

ชั้นเงา

ไม่มีเงา เพิ่มชั้นหรือเลือกพรีเซ็ต

ตัวอย่าง

สีกล่อง
พื้นหลัง

CSS

พรีเซ็ต

CSS เงา

เครื่องมือนี้ทำอะไร

เครื่องมือสร้าง box shadow ช่วยให้คุณออกแบบเงา CSS ด้วยสายตาแล้วคัดลอกการประกาศ box-shadow ที่เสร็จแล้วไปใช้ ซ้อนเงาได้หลายชั้นตามต้องการ ตั้งระยะเลื่อน ความเบลอ การขยาย สี และความทึบของแต่ละชั้น เปลี่ยนเป็นเงาด้านใน แล้วตัวอย่างจะอัปเดตทันที คุณยังวางค่า box-shadow ที่มีอยู่เพื่อแก้ไขแบบภาพได้ด้วย ทุกอย่างทำงานในเบราว์เซอร์ของคุณ

วิธีใช้

  1. เริ่มจากพรีเซ็ตหรือใช้เงาตัวอย่าง
  2. เลือกชั้นด้วยปุ่ม ชั้น หรือกด + เพิ่มชั้น เพื่อซ้อนอีกชั้นไว้ด้านบน
  3. ลาก ระยะเลื่อนแนวนอน ระยะเลื่อนแนวตั้ง ความเบลอ และ การขยาย เลือก สี แล้วลด ความทึบ ให้นุ่มขึ้น เปิด เงาด้านใน เพื่อให้เงาอยู่ด้านใน
  4. ปรับ สีกล่อง พื้นหลัง และ รัศมีมุม ของตัวอย่างให้เข้ากับหน้าเว็บของคุณ ค่าเหล่านี้มีผลกับตัวอย่างเท่านั้น
  5. คัดลอกโค้ดจากการ์ด CSS

ช่อง CSS เงา ด้านล่างแก้ไขได้: วางเงาจาก stylesheet หรือเครื่องมือออกแบบ แล้วตัวควบคุมจะอ่านค่าให้ ความยาวหน่วย rem หรือ em จะแปลงเป็น px โดยคิด 16px

ตัวอย่าง

.card {
  box-shadow:
    0 4px 6px -1px rgb(0 0 0 / 0.1),
    0 12px 24px -6px rgb(30 64 175 / 0.25);
}

เคล็ดลับเงาที่ดูเป็นธรรมชาติ

  • ความทึบต่ำ สีดำ 5–25% ดูสมจริง เงาเข้มทึบดูหนัก
  • การขยายติดลบ ช่วยไม่ให้เงาเบลอขนาดใหญ่ล้นออกด้านข้าง เป็นเทคนิคของเงาแบบ “การ์ด” ส่วนใหญ่
  • ใส่สีให้เงา เงาที่มีโทนสีพื้นหลังหรือสีแบรนด์เล็กน้อยดูมีมิติกว่าสีเทาล้วน
  • แสงมาจากทิศเดียว ให้ระยะเลื่อนแนวตั้งเป็นบวกทุกชั้น เงาทั้งหมดจะสอดคล้องกันเรื่องทิศทางแสง
  • ประสิทธิภาพ เงาเบลอขนาดใหญ่บนองค์ประกอบจำนวนมากอาจทำให้การเลื่อนหน้าช้าบนมือถือสเปกต่ำ ให้ทำแอนิเมชันกับ opacity หรือ transform แทนตัวเงา

คำถามที่พบบ่อย

› ตัวเลขสี่ตัวใน box-shadow หมายถึงอะไร?

ตามลำดับคือ ระยะเลื่อนแนวนอน ระยะเลื่อนแนวตั้ง รัศมีความเบลอ และรัศมีการขยาย ค่าระยะเลื่อนที่เป็นบวกจะเลื่อนเงาไปทางขวาและลง ความเบลอทำให้ขอบนุ่มและติดลบไม่ได้ การขยายทำให้เงาใหญ่ขึ้น (บวก) หรือเล็กลง (ลบ) ก่อนจะเบลอ

› ทำไมต้องใช้เงาหลายชั้น?

เงาจริงคมชัดเมื่ออยู่ใกล้วัตถุและจางลงเมื่ออยู่ไกล การซ้อนสองชั้นขึ้นไป เช่น เงาเล็กคมหนึ่งชั้นกับเงาใหญ่นุ่มอีกชั้น ดูเป็นธรรมชาติกว่าเงาเบลอเข้มชั้นเดียวมาก ระบบออกแบบส่วนใหญ่สร้างระดับความสูง (elevation) แบบนี้

› inset ใช้ทำอะไร?

inset วาดเงาไว้ด้านในกล่องแทนด้านนอก ทำให้ดูเหมือนองค์ประกอบถูกกดลงไป ใช้กับช่องกรอกข้อมูล ปุ่มที่ถูกกด และแสงเรืองด้านใน คุณผสมชั้น inset กับชั้นด้านนอกใน box-shadow เดียวกันได้

› box-shadow ตามรูปมุมโค้ง border-radius ไหม?

ตาม เงาจะมีรูปร่างเหมือนองค์ประกอบรวมถึงมุมโค้ง ตัวอย่างจึงใช้รัศมีมุมที่คุณตั้งไว้ แต่เงาจะไม่ตามส่วนโปร่งใสของรูปภาพ กรณีนั้นให้ใช้ฟิลเตอร์ CSS drop-shadow()