มีวิธีใดที่จะทำให้องค์ประกอบ html อยู่กึ่งกลางแนวตั้งหรือแนวนอนภายในพ่อแม่หลัก
<center></center>
แท็ก
<center>
แท็กเลิกใช้แล้วประมาณ 12 ปีที่แล้ว
มีวิธีใดที่จะทำให้องค์ประกอบ html อยู่กึ่งกลางแนวตั้งหรือแนวนอนภายในพ่อแม่หลัก
<center></center>
แท็ก
<center>
แท็กเลิกใช้แล้วประมาณ 12 ปีที่แล้ว
คำตอบ:
อัปเดต : แม้ว่าคำตอบนี้น่าจะถูกแก้ไขในต้นปี 2013 แต่ก็ไม่ควรใช้อีกต่อไป วิธีการแก้ปัญหาที่เหมาะสมใช้ชดเชย
สำหรับข้อเสนอแนะผู้ใช้อื่น ๆ นอกจากนี้ยังมีคลาส bootstrap ดั้งเดิมเช่น:
class="text-center"
class="pagination-centered"
ขอบคุณ @Henning และ @trejder
class="text-center"
.pagination-centered
เป็นทางเลือก
text-center
เลย์เอาต์เป็นการฝึกที่แย่มาก วิธีที่เหมาะสมในการจัดแนวคอลัมน์ใน Bootstrap คือการใช้col-XX-offset-Y
คลาส getbootstrap.com/css/#grid-offsetting คำตอบนี้น่าจะถูกต้องในปี 2013 แต่ไม่ควรใช้อีกต่อไปในวันนี้
จากเอกสาร Bootstrap :
กำหนดองค์ประกอบและศูนย์ผ่าน
display: block
margin
มีทั้งมิกซ์อินและคลาส
<div class="center-block">...</div>
สำหรับผู้เยี่ยมชมอนาคตสำหรับคำถามนี้:
หากคุณพยายามจัดกึ่งกลางภาพใน div แต่ภาพไม่ได้อยู่ตรงกลางสิ่งนี้อาจอธิบายปัญหาของคุณได้:
<div class="col-sm-4 text-center">
<img class="img-responsive text-center" src="myPic.jpg" />
</div>
img-responsive
ชั้นเพิ่มdisplay:block
การเรียนการสอนในแท็กภาพที่จะหยุดtext-align:center
( text-center
class) จากการทำงาน
สารละลาย:
<div class="col-sm-4">
<img class="img-responsive center-block" src="myPic.jpg" />
</div>
การเพิ่มcenter-block
คลาสจะแทนที่display:block
คำสั่งที่ใส่โดยใช้img-responsive
คลาส
หากไม่มีimg-responsive
คลาสรูปภาพจะอยู่กึ่งกลางโดยเพิ่มtext-center
คลาส
นอกจากนี้คุณควรรู้พื้นฐานของflexboxและวิธีการใช้มันตั้งแต่Bootstrap4 ตอนนี้ใช้มันโดยกำเนิด
นี่คือวิดีโอการสอนที่ยอดเยี่ยมและรวดเร็วโดยแบรดชิฟฟ์
นี่คือแผ่นโกงที่ดี
อัปเดตในปี 2018
ในBootstrap 4ที่อยู่ตรงกลางวิธีการที่มีการเปลี่ยนแปลง ..
ศูนย์แนวนอนใน BS4
text-center
ยังคงใช้สำหรับdisplay:inline
องค์ประกอบmx-auto
แทนที่เด็กcenter-block
กลางdisplay:flex
offset-*
หรือ mx-auto
สามารถใช้กับคอลัมน์กริดกลางmx-auto
(อัตโนมัติแกน x อัตรากำไรขั้นต้น) จะศูนย์display:block
หรือdisplay:flex
องค์ประกอบที่มีความกว้างที่กำหนดไว้ ( %
, vw
, px
ฯลฯ .. ) Flexbox ใช้เป็นค่าเริ่มต้นในคอลัมน์กริดดังนั้นจึงมีวิธีการจัดกึ่งกลางแบบเฟล็กบ็อกซ์ที่หลากหลาย
ตัวอย่าง Bootstrap 4 แนวนอนตรงกลาง
สำหรับการจัดกึ่งกลางแนวตั้งใน BS4 ดู https://stackoverflow.com/a/41464397/171456
คุณสามารถเขียนลงในไฟล์ css ของคุณโดยตรงเช่นนี้:
.content {
position: absolute;
top: 50%;
left:50%;
transform: translate(-50%,-50%);
}
<div class = "content" >
<p> some text </p>
</div>
ฉันใช้สิ่งนี้
<style>
html, body {
height: 100%;
margin: 0;
padding: 0 0;
}
.container-fluid {
height: 100%;
display: table;
width: 100%;
padding-right: 0;
padding-left: 0;
}
.row-fluid {
height: 100%;
display: table-cell;
vertical-align: middle;
width: 100%;
}
.centering {
float: none;
margin: 0 auto;
}
</style>
<body>
<div class="container-fluid">
<div class="row-fluid">
<div class="offset3 span6 centering">
content here
</div>
</div>
</div>
</body>
สำหรับการจัดศูนย์กลางแนวนอนคุณสามารถมีสิ่งนี้:
.centering{
float:none;
margin:0 auto
}
<div class="span8 centering"></div>
<img src="img/logo.png" style="float:none; margin:0 auto" />
เมื่อนำมาใช้โดยตรงในภาพ: ล้อมรอบimg
กับผู้ปกครองdiv
และให้.text-center
หรือ.pagination-centered
ชั้นเรียนให้กับผู้ปกครองทำงานเหมือนมีเสน่ห์
ฉันชอบวิธีนี้จากคำถามที่คล้ายกัน https://stackoverflow.com/a/25036303/2364401ใช้text-center
คลาสbootstraps กับข้อมูลตารางจริง<td>
และ<th>
องค์ประกอบส่วนหัวของตาราง ดังนั้น
<td class="text-center">Cell data</td>
และ
<th class="text-center">Header cell data</th>
ด้วย bootstrap 4 คุณสามารถใช้ flex ได้
<div class="d-flex justify-content-center align-items-center">
<button type="submit" class="btn btn-primary">Create</button>
</div>
แหล่งที่มา: bootstrap 4.1
bootstrap 4 + Flex แก้ปัญหานี้
คุณสามารถใช้ได้
<div class="d-flex justify-content-center align-items-center">
<button type="submit" class="btn btn-primary">Create</button>
</div>
ควรจัดกึ่งกลางแนวนอนและแนวตั้งไว้กึ่งกลาง
ฉันค้นพบใน Bootstrap 4 คุณสามารถทำได้:
ศูนย์แนวนอนเป็นtext-center
ชั้นแน่นอน
กึ่งกลางแนวตั้งอย่างไรก็ตามการใช้คลาส bootstrap กำลังเพิ่มทั้งสองmb-auto mt-auto
เพื่อให้ขอบด้านบนและด้านล่างของขอบถูกตั้งค่าเป็นอัตโนมัติ
สำหรับbootstrap4กึ่งกลางแนวตั้งของบางรายการ
d-flexสำหรับกฎ flex
ดิ้นคอลัมน์สำหรับทิศทางแนวตั้งในรายการ
justify-content-centerสำหรับการจัดกึ่งกลาง
style = 'height: 300px;' ต้องมีสำหรับจุดที่กำหนดไว้ที่กึ่งกลางคำนวณหรือใช้คลาสh-100
<div class="d-flex flex-column justify-content-center bg-secondary" style="
height: 300px;
">
<div class="p-2 bg-primary">Flex item</div>
<div class="p-2 bg-primary">Flex item</div>
<div class="p-2 bg-primary">Flex item</div>
</div>