สิ่งนี้ดูเหมือนจะไม่สำคัญ แต่หลังจากการวิจัยและการเข้ารหัสทั้งหมดฉันไม่สามารถใช้งานได้ เงื่อนไขคือ:
- ไม่ทราบขนาดหน้าต่างเบราว์เซอร์ ดังนั้นโปรดอย่าเสนอโซลูชันที่เกี่ยวข้องกับขนาดพิกเซลที่แน่นอน
- ไม่ทราบขนาดดั้งเดิมของรูปภาพและอาจพอดีหรือไม่พอดีกับหน้าต่างเบราว์เซอร์
- ภาพอยู่กึ่งกลางแนวตั้งและแนวนอน
- สัดส่วนของภาพต้องได้รับการอนุรักษ์
- ภาพจะต้องแสดงอย่างครบถ้วนในหน้าต่าง (ไม่มีการครอบตัด)
- ฉันไม่ต้องการให้แถบเลื่อนปรากฏขึ้น (และไม่ควรใช้หากภาพพอดี)
- รูปภาพจะปรับขนาดโดยอัตโนมัติเมื่อขนาดของหน้าต่างเปลี่ยนไปเพื่อใช้พื้นที่ว่างทั้งหมดโดยไม่ต้องใหญ่กว่าขนาดเดิม
โดยทั่วไปสิ่งที่ฉันต้องการคือ:
.fit {
max-width: 99%;
max-height: 99%;
}
<img class="fit" src="pic.png">
ปัญหาเกี่ยวกับโค้ดด้านบนคือมันใช้งานไม่ได้: รูปภาพใช้พื้นที่แนวตั้งทั้งหมดที่ต้องการโดยการเพิ่มแถบเลื่อนแนวตั้ง
ในการกำจัดของฉันคือ PHP, Javascript, JQuery แต่ฉันจะฆ่าด้วยโซลูชัน CSS เท่านั้น ฉันไม่สนใจว่ามันจะใช้ไม่ได้ใน IE