สนับสนุนเบราว์เซอร์รุ่นเก่า
หากต้องรองรับเบราว์เซอร์รุ่นเก่าคุณจึงไม่สามารถใช้พื้นหลังหรือการไล่ระดับสีหลายแบบได้คุณอาจต้องการทำสิ่งนี้ในdiv
องค์ประกอบสำรอง:
#background {
position: fixed;
top: 0;
left: 0;
width: 50%;
height: 100%;
background-color: pink;
}
ตัวอย่าง: http://jsfiddle.net/PLfLW/1704/
วิธีการแก้ปัญหาใช้ div คงที่พิเศษที่เติมครึ่งหน้าจอ เนื่องจากได้รับการแก้ไขแล้วจะยังคงอยู่ในตำแหน่งแม้เมื่อผู้ใช้ของคุณเลื่อน คุณอาจต้องทำซ้ำกับดัชนี z ในภายหลังเพื่อให้แน่ใจว่าองค์ประกอบอื่น ๆ ของคุณอยู่เหนือ div พื้นหลัง แต่ไม่ควรซับซ้อนเกินไป
หากคุณมีปัญหาเพียงตรวจสอบให้แน่ใจว่าเนื้อหาที่เหลือของคุณมีดัชนี z สูงกว่าองค์ประกอบพื้นหลังและคุณน่าจะดี
เบราว์เซอร์ที่ทันสมัย
หากเบราว์เซอร์ที่ใหม่กว่าเป็นเพียงความกังวลของคุณเท่านั้นยังมีวิธีอื่นอีกสองสามวิธีที่คุณสามารถใช้ได้
การไล่ระดับสีเชิงเส้น:
นี่เป็นทางออกที่ง่ายที่สุดแน่นอน คุณสามารถใช้การไล่ระดับสีเชิงเส้นในคุณสมบัติพื้นหลังของร่างกายสำหรับเอฟเฟกต์ต่างๆ
body {
height: 100%;
background: linear-gradient(90deg, #FFC0CB 50%, #00FFFF 50%);
}
สิ่งนี้ทำให้เกิดการตัดอย่างหนักที่ 50% สำหรับแต่ละสีดังนั้นจึงไม่มี "การไล่ระดับสี" ตามชื่อที่สื่อถึง ลองทำการทดลองกับสไตล์ "50%" เพื่อดูเอฟเฟกต์ต่าง ๆ ที่คุณสามารถทำได้
ตัวอย่าง: http://jsfiddle.net/v14m59pq/2/
พื้นหลังหลายรายการพร้อมขนาดพื้นหลัง:
คุณสามารถใช้สีพื้นหลังกับhtml
องค์ประกอบจากนั้นนำภาพพื้นหลังไปใช้กับbody
องค์ประกอบและใช้background-size
คุณสมบัติเพื่อตั้งค่าเป็น 50% ของความกว้างของหน้า ผลลัพธ์นี้มีเอฟเฟกต์ที่คล้ายกันแม้ว่าจะใช้กับการไล่ระดับสีจริง ๆ เท่านั้นหากคุณใช้ภาพหนึ่งหรือสองภาพ
html {
height: 100%;
background-color: cyan;
}
body {
height: 100%;
background-image: url('http://i.imgur.com/9HMnxKs.png');
background-repeat: repeat-y;
background-size: 50% auto;
}
ตัวอย่าง: http://jsfiddle.net/6vhshyxg/2/
หมายเหตุพิเศษ:โปรดสังเกตว่าทั้งสองอย่างhtml
และbody
องค์ประกอบถูกตั้งค่าเป็นheight: 100%
ในตัวอย่างหลัง นี่คือเพื่อให้แน่ใจว่าแม้ว่าเนื้อหาของคุณจะเล็กกว่าหน้าพื้นหลังจะมีความสูงอย่างน้อยของวิวพอร์ตของผู้ใช้ หากไม่มีความสูงที่ชัดแจ้งเอฟเฟกต์พื้นหลังจะลงไปถึงเนื้อหาของหน้าเว็บของคุณเท่านั้น นอกจากนี้ยังเป็นเพียงการปฏิบัติที่ดีโดยทั่วไป