จัดแนว div สองตัวในแนวนอนเคียงข้างกันตรงกลางหน้าโดยใช้ bootstrap css


90

โปรดดูโค้ดด้านล่างสิ่งที่ฉันพยายาม

<div class="row">
  <div class="center-block">First Div</div>
  <div class="center-block">Second DIV </div>
</div>

เอาต์พุต:

First Div
SecondDiv

ผลลัพธ์ที่คาดหวัง:

                      First Div        Second Div

ฉันต้องการจัดแนว div ทั้งสองในแนวนอนให้อยู่กึ่งกลางหน้าโดยใช้ bootstrap css ฉันจะทำอย่างไร ฉันไม่ต้องการใช้ css และแนวคิดแบบลอยตัวเพื่อทำสิ่งนี้ เนื่องจากฉันจำเป็นต้องใช้ bootstrap css เพื่อทำงานในรูปแบบทุกประเภท (เช่นขนาดหน้าต่างและความละเอียดทั้งหมด) แทนที่จะใช้แบบสอบถามสื่อ

คำตอบ:


196

สิ่งนี้ควรทำเคล็ดลับ:

<div class="container">
    <div class="row">
        <div class="col-xs-6">
            ONE
        </div>
        <div class="col-xs-6">
            TWO
        </div>
    </div>
</div>

อ่านหัวข้อระบบกริดของเอกสาร Bootstrap เพื่อทำความคุ้นเคยกับการทำงานของกริดของ Bootstrap:

http://getbootstrap.com/css/#grid


1
ขอบคุณ. ฉันจะรู้ได้อย่างไรว่า col-xs-6 คืออะไร จำนวน id div ที่เพิ่มขึ้นหมายถึงวิธีแก้ไข
SivaRajini

2
col-xs-6 จัดสรรครึ่งหนึ่งของตาราง 12 คอลัมน์ที่มีอยู่ หากคุณอ่านเอกสาร Bootstrap ที่ฉันเชื่อมโยงในคำตอบของฉันมันควรมีเหตุผลหลังจากการลองผิดลองถูกในส่วนของคุณ :-)
Billy Moat

1
ทำไมxsไม่md?
alexander

5
@Alexander - การใช้ xs หมายความว่าทั้งสอง div จะอยู่เคียงข้างกันในทุกขนาดหน้าจอตั้งแต่มือถือจนถึงเดสก์ท็อป
Billy Moat

1
โอเคดังนั้น xs จึงมีไว้สำหรับโซลูชันทั้งหมดและเช่น lg ใช้สำหรับโซลูชันที่สูงกว่าเท่านั้น?
alexander

29

ใช้คลาส bootstrap col-xx-#และcol-xx-offset-#

สิ่งที่เกิดขึ้นที่นี่คือหน้าจอของคุณแบ่งออกเป็น 12 คอลัมน์ ในcol-xx-#, #คือจำนวนของคอลัมน์ที่คุณครอบคลุมและชดเชยเป็นจำนวนคอลัมน์ที่คุณออกจาก

สำหรับxxในเว็บไซต์ทั่วไปmdเป็นที่ต้องการและหากคุณต้องการให้เลย์เอาต์ของคุณมีลักษณะเหมือนกันในอุปกรณ์มือถือขอxsแนะนำ

ด้วยสิ่งที่ฉันสามารถทำได้ตามความต้องการของคุณ

<div class="row">
  <div class="col-md-4">First Div</div>
  <div class="col-md-8">Second DIV </div>
</div>

ควรทำเคล็ดลับ


7

โซลูชัน Bootstrap 4 สำรอง (วิธีนี้คุณสามารถใช้ div ซึ่งมีขนาดเล็กกว่าcol-6 ):

ศูนย์จัดแนวแนวนอน

<div class="container">
  <div class="row justify-content-center">
    <div class="col-4">
      One of two columns
    </div>
    <div class="col-4">
      One of two columns
    </div>
  </div>
</div>

มากกว่า



3

ในการจัดแนว div สองตัวในแนวนอนคุณต้องรวม Bootstrap สองคลาสเข้าด้วยกัน: นี่คือวิธี:

<div class ="container-fluid">
  <div class ="row">
    <div class ="col-md-6 col-sm-6">
        First Div
    </div>
    <div class ="col-md-6 col-sm-6">
        Second Div
     </div>
  </div>
</div>

0

คำตอบจาก Ranveer (คำตอบที่สองด้านบน) ไม่ได้ผลอย่างแน่นอน

เขาบอกว่าจะใช้col-xx-offset-#แต่นั่นไม่ใช่วิธีการใช้ออฟเซ็ต

หากคุณเสียเวลาของคุณพยายามที่จะใช้col-xx-offset-#เป็นฉันไม่ขึ้นอยู่กับคำตอบของเขา, offset-xx-#การแก้ปัญหาคือการใช้งาน



0

ฉันแนะนำ css grid บน bootstrap หากสิ่งที่คุณต้องการจริงๆคือการมีข้อมูลที่มีโครงสร้างมากขึ้นเช่นตารางเคียงข้างกันที่มีหลายแถวเพราะคุณไม่ต้องเพิ่มชื่อคลาสสำหรับเด็กทุกคน:

// css-grid: https://www.w3schools.com/css/tryit.asp?filename=trycss_grid
// https://css-tricks.com/snippets/css/complete-guide-grid/
.grid-container {
  display: grid;
  grid-template-columns: auto auto; // 20vw 40vw for me because I have dt and dd
  padding: 10px;
  text-align: left;
  justify-content: center;
  align-items: center;
}

.grid-container > div {
  padding: 20px;
}


<div class="grid-container">
  <div>1</div>
  <div>2</div>
  <div>3</div>
  <div>4</div>
  <div>5</div>
  <div>6</div>
  <div>7</div>
  <div>8</div>
</div>

css-grid


0
Make sure you wrap your "row" inside the class "container" . Also add reference to bootstrap in your html.
Something like this should work:
<html lang="en">
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
</head>
 <body>
     <p>lets learn!</p>
  <div class="container">
          <div class="row">
              <div class="col-lg-6" style="background-color: red;">
                  ONE
              </div>
              <div class="col-lg-2" style="background-color: blue;">
                  TWO
              </div>
              <div class="col-lg-4" style="background-color: green;">
              THREE
           </div>
          </div>
      </div>
 </body>
 </html>
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.