วิธีใช้งาน
- เลือก linear, radial หรือ conic จากนั้นกำหนดมุมหรือตำแหน่งจุดศูนย์กลาง
- กำหนดสี ความทึบแสง และตำแหน่งของจุดหยุดสีแต่ละจุด เพิ่มได้สูงสุดหกจุด หรือลบจุดที่ไม่ต้องการออก
- ตรวจสอบตัวอย่าง จากนั้นคัดลอกบรรทัด CSS ไปใส่ใน stylesheet
วิธีการทำงาน
ผลลัพธ์เป็น CSS declaration สำหรับ background แบบมาตรฐาน Linear gradient จะไล่สีตามมุม: 0deg ไล่จากล่างขึ้นบน, 90deg จากซ้ายไปขวา และ 180deg จากบนลงล่าง Radial gradient จะแผ่จากจุดศูนย์กลางเป็นวงกลมหรือวงรีที่พอดีกับกล่อง Conic gradient จะไล่สีวนรอบจุดศูนย์กลาง โดยเริ่มจากมุมที่เลือก เหมาะสำหรับเอฟเฟกต์คล้ายแผนภูมิวงกลมและวงล้อสี
จุดหยุดสีจะแสดงตามลำดับตำแหน่ง คุณจึงลากเปลี่ยนตำแหน่งได้อย่างอิสระ จุดหยุดสีที่มีความทึบแสงลดลงจะแสดงเป็น rgba() ทำให้เห็นพื้นหลังด้านล่าง จุดหยุดสีสองจุดที่ตำแหน่งเดียวกันจะเกิดขอบคมแทนการไล่ผสมสี ซึ่งเป็นวิธีสร้างลายแถบ
ฟังก์ชัน gradient ทั้งสามแบบใช้ได้ในเบราว์เซอร์ปัจจุบันทุกตัว โดยค่าเริ่มต้น gradient จะผสมสีในปริภูมิสี sRGB ซึ่งอาจทำให้สีระหว่างสีคู่เติมเต็มดูหม่นลงเล็กน้อย (เช่น สีน้ำเงินกับสีเหลือง) การเพิ่มจุดหยุดสีกลางด้วยสีที่สว่างกว่าจะช่วยแก้ปัญหานี้ได้
ตัวอย่าง
พื้นหลังส่วนหัวแบบเรียบง่าย
linear-gradient(180deg, #f5f7fa 0%, #c3cfe2 100%) ไล่สีจากบนลงล่างอย่างนุ่มนวล โดยยังอ่านตัวอักษรสีเข้มได้ชัดเจน
ลายแถบขอบคม
ใช้จุดหยุดสีสี่จุด: #0b5d1e 0%, #0b5d1e 50%, #f2c14e 50%, #f2c14e 100% จุดหยุดสีสองจุดที่ตำแหน่ง 50% จะต่อกันโดยไม่มีการไล่ผสมสี จึงได้พื้นที่สีทึบสองส่วน
เอฟเฟกต์สปอตไลต์
ใช้ radial gradient (circle at top left) จาก rgba(255, 255, 255, 0.6) ไปยัง rgba(255, 255, 255, 0) ซ้อนทับบนสีพื้น จะได้แสงนุ่ม ๆ ที่มุม
คำถามที่พบบ่อย
มุม 0deg ไล่สีไปทางไหน?
ใน CSS มุม 0deg ชี้ขึ้น ดังนั้น gradient จึงเริ่มจากด้านล่างและสิ้นสุดที่ด้านบน ส่วน 90deg ไล่จากซ้ายไปขวา ซึ่งต่างจากแอปออกแบบบางตัวที่มักใช้ 0° แทนทิศจากซ้ายไปขวา
ใช้ gradient กับข้อความได้ไหม?
ได้: กำหนด background แล้วเพิ่ม background-clip: text และ color: transparent ตรวจสอบว่าข้อความยังอ่านได้ชัดเจนเมื่ออยู่บนพื้นหลังของหน้าในทุกตำแหน่งของ gradient
ต้องใช้ vendor prefix เช่น -webkit-linear-gradient ไหม?
ไม่จำเป็น เบราว์เซอร์ปัจจุบันรองรับไวยากรณ์ที่ไม่ต้องเติม prefix แล้ว Prefix จำเป็นเฉพาะกับเบราว์เซอร์ที่เก่ามากเท่านั้น
ความเป็นส่วนตัว
ทุกอย่างสร้างขึ้นในเบราว์เซอร์ของคุณ สีและการตั้งค่าจะไม่ถูกส่งหรือจัดเก็บ