คุณสมบัติ object-fit ของ CSS
- หน้าก่อน CSS รูปแบบรูปภาพ
- หน้าต่อไป CSS object-position
CSS object-fit
คุณสมบัตินี้ใช้เพื่อกำหนดวิธีที่จะปรับขนาดของ <img> หรือ <video> ให้เข้ากับกล่องเนื้อหาของมัน
การสนับสนุนของบราวเซอร์
ตัวเลขในตารางบอกว่าเป็นบราวเซอร์แรกที่สนับสนุนคุณสมบัตินี้ทั้งหมด
คุณสมบัติ | Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|---|
object-fit | 31.0 | 16.0 | 36.0 | 7.1 | 19.0 |
คุณสมบัติ object-fit ของ CSS
CSS object-fit
คุณสมบัตินี้ใช้เพื่อกำหนดวิธีที่จะปรับขนาดของ <img> หรือ <video> ให้เข้ากับกล่องเนื้อหาของมัน
คุณสมบัตินี้บอกว่าจะให้เนื้อหาในตัวแทนที่เต็มที่ตามวิธีต่าง ๆ ตามตัวเลือก อย่างเช่น "รักษาอัตราส่วน" หรือ "ขยายและใช้พื้นที่ที่เป็นไปได้ที่สุด"
โปรดดูภาพที่มาจากฝายหวั่นฮอกในเมืองเซี่ยงไฮ้ ซึ่งมีขนาด 300x300 พิกเซล:

แต่หากเราตั้งภาพที่สูง 200x300 พิกเซล มันจะดูเช่นนี้:

ตัวอย่าง
img { width: 200px; height: 300px; }
เราจะเห็นว่าภาพถูกบีบเพื่อที่จะเข้ากับกล่องขนาด 200x300 พิกเซล และอัตราส่วนต้นแบบถูกทำลาย
หากเราใช้ object-fit: cover;
จะตัดขอบภาพ รักษาอัตราส่วนของภาพ และเต็มที่ช่องว่าง แบบนี้:

ตัวอย่าง
img { width: 200px; height: 400px; object-fit: cover; }
ตัวอย่างอื่น
ในนี่ เรามีภาพสองภาพ และเราอยากให้มันเต็มที่กว้าง 50% และสูง 100% ของหน้าต่างบราวเซอร์
ในตัวอย่างด้านล่างนี้ เราไม่ใช้ object-fit
ดังนั้น เมื่อเราปรับขนาดหน้าต่างบราวเซอร์ อัตราส่วนของภาพจะถูกทำลาย:
ตัวอย่าง
ในตัวอย่างต่อไปนี้ เราใช้ object-fit: cover;
ดังนั้น เมื่อเราปรับขนาดหน้าต่างบราวเซอร์ จะรักษาอัตราส่วนของภาพตามไปด้วย:
ตัวอย่าง
ค่าทั้งหมดของคุณสมบัติ object-fit ของ CSS
object-fit
คุณสมบัตินี้ยอมรับค่าต่อไปนี้:
fill
- ค่าเริ่มต้นตามความคิดของคุณ ปรับขนาดของสิ่งที่แทนที่เพื่อที่จะเต็มที่กล่องเนื้อหาขององค์ประกอบ หากจำเป็น จะขยายหรือบีบตัวเพื่อที่จะเข้ากับองค์ประกอบนี้contain
- ย่อยขนาดของสิ่งที่แทนที่เพื่อที่จะรักษาอัตราส่วนของเงื่อนไข และใส่สิ่งที่แทนที่เข้าไปในกล่องเนื้อหาขององค์ประกอบcover
- ปรับขนาดของสิ่งที่แทนที่เพื่อที่จะรักษาอัตราส่วนของเงื่อนไขที่เต็มที่ขององค์ประกอบเนื้อหา โดยที่จะตัดทอดให้เข้ากับองค์ประกอบเนื้อหานี้none
- ไม่ปรับขนาดเนื้อหาที่แทนที่scale-down
- ปรับขนาดเนื้อหาเหมือนที่ไม่ได้กำหนดเนื้อหาหรือเนื้อหาที่มี (จะทำให้ขนาดวัตถุเป็นเล็กกว่า)
ตัวอย่างด้านล่างนี้แสดง object-fit
ค่าที่อาจมีของแคร์คิว
ตัวอย่าง
fill {object-fit: fill;} contain {object-fit: contain;} cover {object-fit: cover;} scale-down {object-fit: scale-down;} none {object-fit: none;}
- หน้าก่อน CSS รูปแบบรูปภาพ
- หน้าต่อไป CSS object-position