ข้ามไปที่เนื้อหาหลัก ข้ามไปที่การนำทางเอกสาร
in English

กอง

ตัวช่วยจดชวเลขที่สร้างขึ้นจากยูทิลิตี้ flexbox ของเราเพื่อทำให้การจัดวางส่วนประกอบได้เร็วและง่ายขึ้นกว่าที่เคย

สแต็คนำเสนอทางลัดสำหรับการใช้คุณสมบัติ flexbox จำนวนหนึ่ง เพื่อสร้างเค้าโครงใน Bootstrap อย่างรวดเร็วและง่ายดาย เครดิตทั้งหมดสำหรับแนวคิดและการนำไปปฏิบัติจะไปที่ โครงการ Pylonแบบโอเพ่นซอร์ส

หัวขึ้น! เพิ่งเพิ่มการรองรับยูทิลิตี้ gap ด้วย flexbox ใน Safari ดังนั้นให้พิจารณาตรวจสอบการรองรับเบราว์เซอร์ที่คุณต้องการ เลย์เอาต์กริดไม่ควรมีปัญหา อ่านเพิ่มเติม

แนวตั้ง

ใช้.vstackสร้างเลย์เอาต์แนวตั้ง รายการแบบเรียงซ้อนจะมีความกว้างเต็มตามค่าเริ่มต้น ใช้.gap-*ยูทิลิตี้เพื่อเพิ่มช่องว่างระหว่างรายการ

รายการแรก
รายการที่สอง
รายการที่สาม
<div class="vstack gap-3">
  <div class="bg-light border">First item</div>
  <div class="bg-light border">Second item</div>
  <div class="bg-light border">Third item</div>
</div>

แนวนอน

ใช้.hstackสำหรับการจัดวางแนวนอน รายการที่เรียงซ้อนกันจะถูกจัดกึ่งกลางในแนวตั้งโดยค่าเริ่มต้นและใช้ความกว้างที่จำเป็นเท่านั้น ใช้.gap-*ยูทิลิตี้เพื่อเพิ่มช่องว่างระหว่างรายการ

รายการแรก
รายการที่สอง
รายการที่สาม
<div class="hstack gap-3">
  <div class="bg-light border">First item</div>
  <div class="bg-light border">Second item</div>
  <div class="bg-light border">Third item</div>
</div>

การใช้ยูทิลิตี้ระยะขอบแนวนอนเช่น.ms-autoตัวเว้นวรรค:

รายการแรก
รายการที่สอง
รายการที่สาม
<div class="hstack gap-3">
  <div class="bg-light border">First item</div>
  <div class="bg-light border ms-auto">Second item</div>
  <div class="bg-light border">Third item</div>
</div>

และด้วยกฎแนวตั้ง :

รายการแรก
รายการที่สอง
รายการที่สาม
<div class="hstack gap-3">
  <div class="bg-light border">First item</div>
  <div class="bg-light border ms-auto">Second item</div>
  <div class="vr"></div>
  <div class="bg-light border">Third item</div>
</div>

ตัวอย่าง

ใช้.vstackเพื่อซ้อนปุ่มและองค์ประกอบอื่นๆ:

<div class="vstack gap-2 col-md-5 mx-auto">
  <button type="button" class="btn btn-secondary">Save changes</button>
  <button type="button" class="btn btn-outline-secondary">Cancel</button>
</div>

สร้างแบบฟอร์มอินไลน์ด้วย.hstack:

<div class="hstack gap-3">
  <input class="form-control me-auto" type="text" placeholder="Add your item here..." aria-label="Add your item here...">
  <button type="button" class="btn btn-secondary">Submit</button>
  <div class="vr"></div>
  <button type="button" class="btn btn-outline-danger">Reset</button>
</div>

ซาส

.hstack {
  display: flex;
  flex-direction: row;
  align-items: center;
  align-self: stretch;
}

.vstack {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-self: stretch;
}