วลาด เมอร์เซวิช
การไล่ระดับสีเรียกว่า การเปลี่ยนแปลงที่ราบรื่นจากสีหนึ่งไปอีกสีหนึ่งและอาจมีหลายสีและการเปลี่ยนระหว่างสีเหล่านั้น ด้วยความช่วยเหลือของการไล่ระดับสีเอฟเฟกต์การออกแบบเว็บที่แปลกประหลาดที่สุดจะถูกสร้างขึ้นเช่นสามมิติหลอกแสงสะท้อนพื้นหลัง ฯลฯ นอกจากนี้ด้วยการไล่ระดับสีองค์ประกอบยังดูน่าดึงดูดกว่าองค์ประกอบที่มีสีเดียว
ไม่มีคุณสมบัติแยกต่างหากสำหรับการเพิ่มการไล่ระดับสี เนื่องจากถือว่าเป็นภาพพื้นหลัง ดังนั้นจึงถูกเพิ่มผ่านคุณสมบัติ background-image หรือคุณสมบัติพื้นหลังทั่วไป ดังที่แสดงในตัวอย่างที่ 1
ตัวอย่างที่ 1: การไล่ระดับสี
ที่นี่สำนวนลามกอนาจารมักจะเริ่มต้นจากภาพที่น่าเบื่อ แต่เกมภาษาไม่ได้นำไปสู่ความเข้าใจเชิงโต้ตอบที่กระตือรือร้น
ผลลัพธ์ ตัวอย่างนี้แสดงในรูป 1.
ข้าว. 1. การไล่ระดับสีเชิงเส้นสำหรับย่อหน้า
ในตัวมาก กรณีง่ายๆด้วยสองสีที่แสดงในตัวอย่างที่ 1 ขั้นแรกให้เขียนตำแหน่งที่จะเริ่มต้นการไล่ระดับสี จากนั้นจึงเขียนสีเริ่มต้นและสิ้นสุด
ในการบันทึกตำแหน่ง ขั้นแรกให้คุณเขียนไปที่ จากนั้นเพิ่มคำหลัก top , lower และ left , right รวมถึงการผสมผสานของคำหลักเหล่านั้น ลำดับของคำไม่สำคัญ คุณสามารถเขียนไปทางซ้ายบนหรือซ้ายบนก็ได้ ในตาราง 1 แสดงตำแหน่งที่แตกต่างกันและประเภทการไล่ระดับสีที่ได้รับสำหรับสี #000 และ #fff หรือจากสีดำไปเป็นสีขาว
ตำแหน่ง | คำอธิบาย | ดู | |
---|---|---|---|
ไปด้านบน | 0องศา | จากล่างขึ้นบน | |
ไปทางซ้าย | 270องศา | จากขวาไปซ้าย | |
ไปที่ด้านล่าง | 180 องศา | จากบนลงล่าง | |
ไปทางขวา | 90องศา | จากซ้ายไปขวา | |
ไปทางซ้ายบน | จากมุมขวาล่างไปทางซ้ายบน | ||
ไปทางขวาบน | จากซ้ายล่างไปขวาบน | ||
ไปทางซ้ายล่าง | จากมุมขวาบนไปทางซ้ายล่าง | ||
ไปทางขวาล่าง | จากซ้ายบนไปขวาล่าง |
แทนที่จะระบุคีย์เวิร์ด คุณสามารถระบุความชันของเส้นไล่ระดับสี ซึ่งแสดงทิศทางของการไล่ระดับสีได้ ขั้นแรกให้เขียนค่าบวกหรือลบของมุม จากนั้นจึงบวกองศาเข้าไป
องศาศูนย์ (หรือ 360°) สอดคล้องกับการไล่ระดับสีจากล่างขึ้นบน จากนั้นนับถอยหลังตามเข็มนาฬิกา มุมเอียงของเส้นไล่ระดับสีแสดงอยู่ด้านล่าง
สำหรับค่าด้านซ้ายบนและค่าที่คล้ายกัน มุมของเส้นไล่ระดับสีจะคำนวณตามขนาดขององค์ประกอบ เพื่อเชื่อมต่อจุดมุมสองจุดที่อยู่ตรงข้ามกันในแนวทแยง
หากต้องการสร้างการไล่ระดับสีที่ซับซ้อน สองสีจะไม่เพียงพออีกต่อไป ไวยากรณ์ช่วยให้คุณสามารถเพิ่มสีได้ไม่จำกัด โดยระบุสีโดยคั่นด้วยเครื่องหมายจุลภาค ในกรณีนี้คุณสามารถใช้ สีโปร่งใส (คำหลักโปร่งใส ) และยังใช้แบบโปร่งแสงอีกด้วย รูปแบบ RGBAดังแสดงในตัวอย่างที่ 2
ตัวอย่างที่ 2: สีโปร่งแสง
HTML5 CSS3 IE 9 IE 10 Cr Op Sa Fx
ผลลัพธ์ของตัวอย่างนี้แสดงไว้ในรูปที่ 1 2.
ข้าว. 2. การไล่ระดับสีด้วยสีโปร่งแสง
หากต้องการวางตำแหน่งสีในการไล่ระดับสีอย่างแม่นยำ ค่าสีจะตามด้วยตำแหน่งเป็นเปอร์เซ็นต์ พิกเซล หรือหน่วยอื่นๆ เช่น บันทึก แดง 0%, ส้ม 50%, เหลือง 100%หมายความว่าการไล่ระดับสีเริ่มเป็นสีแดง ตามด้วยสีส้ม 50% และจากนั้นก็เป็นสีเหลืองจนหมด เพื่อความง่าย สามารถละเว้นหน่วยที่รุนแรงเช่น 0% และ 100% ได้ โดยถือว่าเป็นค่าเริ่มต้น ตัวอย่างที่ 3 แสดงวิธีการสร้างปุ่มไล่ระดับสีโดยกำหนดตำแหน่งของสีที่สองจากสามสีไว้ที่ 36%
ตัวอย่างที่ 3: ปุ่มไล่ระดับสี
HTML5 CSS3 IE 9 IE 10 Cr Op Sa Fx
ผลลัพธ์ของตัวอย่างนี้แสดงไว้ในรูปที่ 1 3.
ข้าว. 3. ปุ่มไล่ระดับสี
ด้วยการตั้งค่าตำแหน่งของสี คุณสามารถได้รับการเปลี่ยนสีที่คมชัด ซึ่งท้ายที่สุดก็จะทำให้เกิดชุดแถบสีเดียว ดังนั้น สำหรับสองสี คุณต้องระบุสี่สี โดยสองสีแรกจะเหมือนกันและเริ่มจาก 0% ถึง 50% สีที่เหลือก็เหมือนกันและต่อจาก 50% ถึง 100% ในตัวอย่าง มีการเพิ่มแถบ 4 เส้นเป็นพื้นหลังของหน้าเว็บ เนื่องจากค่าสุดขีดจะถูกแทนที่โดยอัตโนมัติจึงไม่สามารถระบุได้ดังนั้นจึงเพียงพอที่จะเขียนเพียงสองสีเท่านั้น
ตัวอย่างที่ 4 ลายทางธรรมดา
HTML5 CSS3 IE 9 IE 10 Cr Op Sa Fx
ชนชั้นกระฎุมพียุโรปทั่วไปและความเคารพนับถือได้รับการแสดงอย่างงดงามด้วยภาษาราชการ
ผลลัพธ์ของตัวอย่างนี้แสดงไว้ในรูปที่ 1 4. โปรดทราบว่าสีไล่ระดับสีสีใดสีหนึ่งถูกตั้งค่าให้โปร่งใส ดังนั้นจึงเปลี่ยนทางอ้อมผ่านสีพื้นหลังของหน้าเว็บ
ข้าว. 4. พื้นหลังเป็นแถบแนวนอน
การไล่ระดับสีค่อนข้างเป็นที่นิยมในหมู่นักออกแบบเว็บไซต์ แต่การเพิ่มเข้าไปนั้นมีความซับซ้อนเนื่องจากคุณสมบัติที่แตกต่างกันสำหรับแต่ละเบราว์เซอร์และการระบุหลายสี เพื่อให้ง่ายต่อการสร้างการไล่ระดับสีและแทรกลงในโค้ด ฉันขอแนะนำเว็บไซต์ www.colorzilla.com/gradient-editor ซึ่งคุณสามารถตั้งค่าการไล่ระดับสีได้อย่างง่ายดายและรับทันที รหัสที่จำเป็น- มีอยู่ เทมเพลตสำเร็จรูป(Presets), การดูผลลัพธ์ (Preview), การปรับสี (Adjustments), โค้ดสุดท้าย (CSS) ที่รองรับ IE ผ่านฟิลเตอร์ สำหรับผู้ที่ทำงานใน Photoshop หรืออื่นๆ โปรแกรมแก้ไขกราฟิกการสร้างการไล่ระดับสีอาจดูเหมือนเป็นเค้กชิ้นเล็กๆ แต่คนอื่นๆ ก็ไม่มีปัญหาในการหามันอย่างรวดเร็ว โดยทั่วไปแล้วฉันขอแนะนำอย่างยิ่ง
ก! การไล่ระดับสีเป็นเครื่องมือที่ยอดเยี่ยมสำหรับการปรับแต่งสี CSS3- แทนที่จะใช้รูปภาพเพื่อสร้างเอฟเฟกต์การไล่ระดับสีบนหน้าเว็บ การใช้งานจะมีประโยชน์มากกว่า การไล่ระดับสี CSS3และด้วยเหตุนี้จึง "ทำให้ไซต์สว่างขึ้น" เนื่องจากผู้ใช้จะไม่ต้องเสียเวลาและปริมาณการรับส่งข้อมูลในการดาวน์โหลด ภาพพื้นหลัง- การไล่ระดับสีมีสองประเภทหลัก: แนวรัศมีและเชิงเส้น โพสต์ของวันนี้จะเกี่ยวกับพวกเขา
การไล่ระดับสีเชิงเส้น
ดังที่การจำแนกประเภทกล่าวไว้ว่า การไล่ระดับสีใน CSS3เป็นภาพ ไม่มีคุณสมบัติพิเศษสำหรับพวกเขา และโฆษณาใช้คุณสมบัติภาพพื้นหลัง
โดยทั่วไป ไวยากรณ์การไล่ระดับสี (เชิงเส้น) จะมีลักษณะดังนี้:
1 | div( |
เรามาพูดถึงทุกอย่างตามลำดับกัน
ประการแรก การไล่ระดับสีเชิงเส้นจะถูกประกาศโดยฟังก์ชัน linear-gradient() ฟังก์ชั่นมีสามความหมายหลัก ค่าแรกจะกำหนด ตำแหน่งเริ่มต้น- ตัวอย่างระบุด้านบนเช่น ตำแหน่งเริ่มต้นจากด้านบน คุณยังสามารถใช้ด้านล่าง ซ้ายและขวา;
หากมุมเป็นลบ ตำแหน่งจะเปลี่ยนจากมุมล่างซ้ายไปด้านซ้ายบน
ค่าที่สองของฟังก์ชันคือสีเริ่มต้นและตำแหน่งหยุดซึ่งระบุเป็นเปอร์เซ็นต์ ไม่จำเป็นต้องประกาศตำแหน่งนี้ เบราว์เซอร์จะใช้ค่าเริ่มต้นเป็น 0% สำหรับสีแรก
ค่าสุดท้ายคือสีที่สองและตำแหน่งหยุด ค่าเริ่มต้นเป็น 100% ค่าที่รุนแรงเหล่านี้หมายความว่าสีแรกเริ่มเปลี่ยนเป็นสีที่สองทันที อย่างไรก็ตาม หากเราตั้งค่าสีแรกเป็น 50% สีจะเริ่มเปลี่ยนไปเป็นสีที่สองจากตรงกลางของความสูงที่มีอยู่เท่านั้น นี่คือลักษณะของโค้ด:
เราได้แถบที่มีความสูงเท่ากัน ด้วยขอบที่ชัดเจนจะไม่มีการเปลี่ยนสี เพื่อให้เข้าใจวิธีการทำงานได้ดีขึ้น ให้ทดลองกับค่าต่างๆ
การไล่ระดับสีแบบรัศมี เช่นเดียวกับการไล่ระดับสีแบบเส้นตรง ได้รับการประกาศเป็นฟังก์ชัน มีเพียงการไล่ระดับสีแบบรัศมี () เท่านั้น นอกจากนี้ยังมีค่าพื้นฐาน: นี่คือรูปร่างของการไล่ระดับสีในแนวรัศมี (วงกลม - วงกลมหรือวงรี - วงรี) สีเริ่มต้นและสีสุดท้าย ไวยากรณ์มีดังนี้:
div( |
หากคุณไม่ได้ระบุรูปร่าง ค่าเริ่มต้นจะเป็นวงรี
นอกจากนี้ ตำแหน่งกึ่งกลางของการไล่ระดับสีจะถูกตั้งค่าตามค่าเริ่มต้น ซึ่งสามารถเปลี่ยนแปลงได้ สามารถระบุตำแหน่งได้โดยใช้คำสั่ง (บน ล่าง ซ้าย ขวา และกึ่งกลาง) ตลอดจนการผสมกัน หรือระบุเป็นเปอร์เซ็นต์หรือพิกเซล
ชุดคำสั่ง:
- ตรงกลางด้านบน - ด้านบน - 50% 0%;
- ด้านซ้าย มุมบน— ซ้ายบน — 0% 0%;
- ที่มุมขวาบน - บนขวา - 100% 0%;
- ตรงกลาง - ตรงกลาง - 50% 50%;
- กลางซ้าย - กลางซ้าย - 0% 50%;
- ตรงกลางขวา - ตรงกลางขวา - 100% 50%;
- กลางล่าง - ล่าง - 50% 100%;
- ที่มุมล่างซ้าย - ล่างซ้าย - 0% 100%;
- ที่มุมขวาล่าง - ล่างขวา - 100% 100%
นี่คือตัวอย่างที่มีเปอร์เซ็นต์:
div( |
ค่าแกนแรก เอ็กซ์ที่สองใน คุณ.
คุณยังสามารถกำหนดขนาดของการไล่ระดับสีในแนวรัศมีได้ ขนาดจะแสดงด้วยช่องว่างหลังรูปร่างไล่ระดับสี ใช้ตามค่าเริ่มต้น มุมไกลที่สุด(ไปยังมุมไกล) การคำนวณจะดำเนินการจาก จุดศูนย์กลางไล่ระดับเป็น:
เพื่อให้เข้าใจสิ่งนี้ได้ดีขึ้น เรามาดูตัวอย่างกัน การไล่ระดับสีรูปทรงวงรีโดยมีสีเริ่มต้นเป็นสีขาวและสีสิ้นสุดเป็นสีน้ำเงิน:
div( |
ขนาดคำนวณจากระยะห่างถึงด้านใกล้ จะเห็นได้ว่าด้านบนอยู่ใกล้แนวแกนมากขึ้น ยและทิ้งไว้ตามแกน เอ็กซ์.
และตอนนี้ไปไกลแล้ว:
div( |
ผลลัพธ์อย่างที่พวกเขาพูดนั้นชัดเจน ขนาดคำนวณจากระยะทางถึงด้านไกล
ในการไล่ระดับสีแบบรัศมีและเชิงเส้น สามารถใช้ตำแหน่งหยุดสำหรับสีได้ ฉันอยากจะทราบด้วยว่าหากคุณต้องการความโปร่งใสของสี คุณควรใช้ rgba
div( |
ช่องอัลฟ่าอันสุดท้ายและเท่ากับ 0.2 ระบุว่ามีการใช้สีเพียง 20% ของ 100%
ในทั้งสองประเภท การไล่ระดับสี CSS3คุณไม่สามารถใช้สองสีได้ แต่มีหลายสี
div( |
สำหรับทั้งสองประเภท สามารถใช้สีซ้ำได้ นั่นคือวงจรเกิดขึ้นจากค่าเหล่านี้ การทำซ้ำฟังก์ชันการไล่ระดับสี, การทำซ้ำ-เชิงเส้น-การไล่ระดับสี() สำหรับเส้นตรง และ การทำซ้ำ-รัศมี-การไล่ระดับสี() สำหรับรัศมี
div( |
0% , #FFAE00 100% ) ;
/* สำหรับไฟร์ฟอกซ์ */
ภาพพื้นหลัง : -ms-linear-gradient(top , #FF5A00 0% , #FFAE00 100% ) ;
/* สำหรับ IE 10+ */ ภาพพื้นหลัง : -o-linear-gradient(top , #FF5A00 0% , #FFAE00 100% ) ;
}
div(
/* สำหรับโอเปร่า */
}
ภาพพื้นหลัง : การไล่ระดับสีเชิงเส้น (ด้านบน , #FF5A00 0% , #FFAE00 100% ) ;
/* ไวยากรณ์มาตรฐาน */
ตัวกรอง : progid: DXImageTransform.Microsoft .gradient(startColorstr= #33FF5A00 , endColorstr= #33FFAE00 ) ;
โดยที่ 33 ถัดจากแฮชคือเปอร์เซ็นต์ของความอิ่มตัวของสี
ฉันหวังว่าบทความนี้จะเป็นประโยชน์สำหรับคุณและหัวข้อที่กล่าวถึงก็ครอบคลุมครบถ้วน หากต้องการติดตามบทความและบทเรียนล่าสุด โปรดสมัครรับข้อมูลเร็วๆ นี้ เร็วๆ นี้ เว็บไซต์จะโหลดได้ง่ายขึ้น และจะสามารถสร้างได้โดยไม่ต้องมีรูปภาพเลย ตอนนี้เข้าแล้วเบราว์เซอร์ที่ทันสมัย
คุณสามารถสร้างพื้นหลังไล่ระดับสีที่ซับซ้อนได้
ความช่วยเหลือเกี่ยวกับ CSS
และในขณะเดียวกันก็ไม่มีรูปภาพเลย
การสร้างการไล่ระดับสี CSS โดยไม่มีรูปภาพ
สมมติว่าเราต้องการทำการไล่ระดับสีในพื้นหลังจากสีเทาเป็นสีดำ เพื่อให้บรรลุเป้าหมายนี้ W3 Corporation ได้เสนอให้ใช้คำสั่งการไล่ระดับสีเชิงเส้นแบบพิเศษใน CSS3
ดังนั้น ตามเวอร์ชัน W3 เพื่อสร้างพื้นหลังแบบไล่ระดับสี เพียงแค่เขียนในตัวเลือกบล็อก: พื้นหลัง: การไล่ระดับสีเชิงเส้น (เริ่มต้น, color1 ตำแหน่ง 1, color2 ตำแหน่ง 2,..., colorN ตำแหน่ง N);และเบราว์เซอร์จะวาดพื้นหลังไล่ระดับสีในบล็อกโดยอัตโนมัติ จะเห็นได้ชัดเจนว่าดอกไม้และจุดควบคุม การไล่ระดับสีอาจมีได้มาก พารามิเตอร์ เริ่ม ระบุทิศทางที่การไล่ระดับสีควรแพร่กระจาย - อาจเป็นได้ทั้ง สูงสุด
สำหรับการไล่ระดับสีในแนวตั้งหรือ
สำหรับเบราว์เซอร์ที่คล้ายกับ IE คุณสามารถใช้การไล่ระดับสีตามตัวกรอง และสำหรับเบราว์เซอร์ webkit (Safari, Chrome) และ gecko (Mozilla) ก็ยังมีทางเลือกอื่นเช่นเคย: -webkit-gradient และ -moz-linear-gradient ซึ่ง ยอมรับพารามิเตอร์ที่คล้ายกัน ดูบล็อกโค้ดต่อไปนี้สำหรับวิธีการทำงานทั้งหมด:
พื้นหลัง: #999; ตัวกรอง: progid:DXImageTransform.Microsoft.gradient(startColorstr="#cccccc", endColorstr="#000000"); พื้นหลัง: -webkit-gradient(เชิงเส้น, บนซ้าย, ล่างซ้าย, จาก (#ccc), ถึง (#000)); พื้นหลัง: -moz-linear-gradient (ด้านบน, #ccc, #000);
หลังจาก Render ออกมาจะเป็นแบบนี้