Получите сетку bootstrap для центрирования, не влияя на симметрию элементов в контейнере - PullRequest
0 голосов
/ 27 мая 2020

У меня есть 4 графика размером 2 x 2, они красиво расположены, но смещены в левую часть экрана. Когда я пытаюсь добавить столбец (а, возможно, здесь я ошибаюсь), все складывается в беспорядок. Мне нужен столбец шириной 2 слева от обеих строк, а затем сетка 2 x 2, содержащая 4 диаграммы.

enter image description here

 <div class="container-fluid">

     </div>
      <div class="row">
        <div class="col-sm-4">
          <img src="fig1.png" alt="Bootcamp" width="450" height="350">
        </div>
        <div class="col-sm-4">
          <img src="fig2.png" alt="Bootcamp" width="450" height="350">
        </div>
      </div>
    </div> 
    <div>
      <div class="container-fluid">
        <div class="row">
          <div class="col-sm-4">
            <img src="fig3.png" alt="Bootcamp" width="450" height="350">
          </div>
          <div class="col-sm-4">
            <img src="fig4.png" alt="Bootcamp" width="450" height="350">
          </div>
        </div>
      </div> 

Ответы [ 2 ]

0 голосов
/ 27 мая 2020

Если я правильно понимаю, любой из них должен работать:

Вариант 1:

<div class="container-fluid">
    <div class="row">
        <div class="col-sm-2 bg-dark text-light">
            <div>
                <p>Text 1</p>
            </div>
            <div>
                <p>Text 2</p>
            </div>
        </div>
        <div class="col-sm-10">
            <!-- Add another row inside the remaining space, then add the 2 columns for graphs -->
            <div class="row">
                <div class="col-sm-6">
                    <img src="img1.png" class="img-fluid" alt="Bootcamp">
                </div>
                <div class="col-sm-6">
                    <img src="img2.png" class="img-fluid" alt="Bootcamp">
                </div>
                <div class="col-sm-6">
                    <img src="img3.png" class="img-fluid" alt="Bootcamp">
                </div>
                <div class="col-sm-6">
                    <img src="img4.png" class="img-fluid" alt="Bootcamp">
                </div>
            </div>
        </div>
    </div>
</div>

Что даст

Layout 1 Вариант 2:

<div class="container-fluid">
    <div class="row">
        <div class="col-sm-2 bg-dark text-light">
            <div>
                <p>Text 1</p>
            </div>
        </div>
        <div class="col-sm-10">
            <div class="row">
                <div class="col-sm-6">
                    <img src="img1.png" class="img-fluid" alt="Bootcamp">
                </div>
                <div class="col-sm-6">
                    <img src="img2.png" class="img-fluid" alt="Bootcamp">
                </div>
            </div>
        </div>
        <!-- Add second row -->
        <div class="col-sm-2 bg-dark text-light">
            <div>
                <p>Text 2</p>
            </div>
        </div>
        <div class="col-sm-10">
            <div class="row">
                <div class="col-sm-6">
                    <img src="img3.png" class="img-fluid" alt="Bootcamp">
                </div>
                <div class="col-sm-6">
                    <img src="img4.png" class="img-fluid" alt="Bootcamp">
                </div>
            </div>
        </div>
    </div>
</div>

Что даст

Layout 2

Надеюсь, это поможет!

0 голосов
/ 27 мая 2020

Я изменил код в соответствии с вашими требованиями. Также, чтобы сделать ваш контент-центр, я добавляю класс justify-content-center к классу row div.

<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css" integrity="sha384-9aIt2nRpC12Uk9gS9baDl411NQApFmC26EwAOH8WgZl5MYYxFfc+NcPb1dKGj7Sk" crossorigin="anonymous">

<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js" integrity="sha384-OgVRvuATP1z7JjHLkuOU7Xw704+h835Lr+6QL9UvYjZE3Ipu6Tp75j7Bh/kR0JKI" crossorigin="anonymous"></script>


<div class="container-fluid">

  <div class="row justify-content-center">
    <div class="col-sm-2"> TEXT 1 </div>
    <div class="col-sm-4">
      <img src="fig1.png" alt="Bootcamp" width="450" height="350">
    </div>
    <div class="col-sm-4">
      <img src="fig2.png" alt="Bootcamp" width="450" height="350">
    </div>
  </div>
  <div class="row justify-content-center">
    <div class="col-sm-2"> TEXT 2 </div>
    <div class="col-sm-4">
      <img src="fig3.png" alt="Bootcamp" width="450" height="350">
    </div>
    <div class="col-sm-4">
      <img src="fig4.png" alt="Bootcamp" width="450" height="350">
    </div>
  </div>
</div>
...