ฉันมีหน้าเว็บง่ายๆที่มีเนื้อหา Lipsum ซึ่งอยู่กึ่งกลางของหน้า หน้านี้ทำงานได้ดีใน Chrome และ Firefox หากฉันลดขนาดของหน้าต่างเนื้อหาจะเต็มหน้าต่างจนกว่าจะไม่สามารถเพิ่มแถบเลื่อนและเติมเนื้อหาออกจากหน้าจอไปทางด้านล่าง
อย่างไรก็ตามเพจไม่ได้อยู่กึ่งกลางใน IE11 ฉันสามารถทำให้หน้าอยู่ตรงกลางใน IE ได้โดยการงอร่างกาย แต่ถ้าทำเช่นนั้นเนื้อหาจะเริ่มออกจากหน้าจอไปทางด้านบนและตัดส่วนบนของเนื้อหาออก
ด้านล่างนี้คือสองสถานการณ์ ดู Fiddles ที่เกี่ยวข้อง หากปัญหายังไม่ชัดเจนให้ลดขนาดของหน้าต่างผลลัพธ์เพื่อบังคับให้สร้างแถบเลื่อน
หมายเหตุ: แอปพลิเคชันนี้กำหนดเป้าหมายเฉพาะ Firefox, Chrome และ IE (IE11) เวอร์ชันล่าสุดซึ่งทั้งหมดนี้รองรับคำแนะนำของผู้สมัคร Flexboxดังนั้นความเข้ากันได้ของคุณลักษณะจึงไม่ควรเป็นปัญหา (ในทางทฤษฎี)
แก้ไข : เมื่อใช้ Fullscreen API เพื่อแสดง div ด้านนอกแบบเต็มหน้าจอเบราว์เซอร์ทั้งหมดจะอยู่ตรงกลางอย่างถูกต้องโดยใช้ CSS ดั้งเดิม อย่างไรก็ตามเมื่อออกจากโหมดเต็มหน้าจอ IE จะเปลี่ยนกลับไปอยู่ตรงกลางในแนวนอนและแนวตั้งด้านบน
แก้ไข : IE11 ใช้การใช้ Flexbox ที่ไม่ใช่ผู้ขายโดยเฉพาะ การอัปเดตรูปแบบกล่องยืดหยุ่น ("Flexbox")
ศูนย์และปรับขนาดอย่างถูกต้องใน Chrome / FF ไม่ได้อยู่ตรงกลาง แต่ปรับขนาดได้อย่างถูกต้องใน IE11
ซอ: http://jsfiddle.net/Dragonseer/3D6vw/
html, body
{
height: 100%;
width: 100%;
}
body
{
margin: 0;
}
.outer
{
min-width: 100%;
min-height: 100%;
display: flex;
align-items: center;
justify-content: center;
}
.inner
{
width: 80%;
}
ศูนย์อย่างถูกต้องในทุกที่ตัดด้านบนเมื่อลดขนาดลง
ซอ: http://jsfiddle.net/Dragonseer/5CxAy/
html, body
{
height: 100%;
width: 100%;
}
body
{
margin: 0;
display: flex;
}
.outer
{
min-width: 100%;
min-height: 100%;
display: flex;
align-items: center;
justify-content: center;
}
.inner
{
width: 80%;
}
-ms-flexbox
สำหรับ IE ..