2015-04-21 6 views
0

У меня возникла проблема с bootstrap 3.0 с использованием панелей и колонок. Когда страница будет отображаться в полноэкранном режиме, я бы хотел, чтобы последняя панель была чуть ниже первой, вместо того чтобы иметь ее в новой строке, чтобы уменьшить прокрутку для пользователей, которые ее используют. Как я могу это достичь?Почему последняя панель на новой строке

http://jsfiddle.net/39q8yxrv/

<div class="col-sm-4 col-md-4"> 
    <div class="panel panel-default"> 
     <div class="panel-heading"> 
      <strong>Personal details</strong> 
     </div> 
    </div> 
    <div class="panel-body"> 
     <div class="form-group"> 
      <label for="" class="col-sm-4 col-md-4 control-label"> 
       <strong>Field</strong> 
      </label> 
      <div class="col-sm-8 col-md-8"> 
       <div class="well well-sm"> 
        Male 
       </div> 
      </div> 
     </div> 
    </div> 
</div> 
<div class="col-sm-4 col-md-4"> 
    <div class="panel panel-default"> 
     <div class="panel-heading"> 
      <strong>Personal details</strong> 
     </div> 
    </div> 
    <div class="panel-body"> 
     <div class="form-group"> 
      <label for="" class="col-sm-4 col-md-4 control-label"> 
       <strong>Field</strong> 
      </label> 

      <div class="col-sm-8 col-md-8"> 
       <div class="well well-sm"> 
        Male 
       </div> 
      </div> 
     </div> 
    </div> 
</div> 
<div class="col-sm-4 col-md-4"> 
    <div class="panel panel-default"> 
     <div class="panel-heading"> 
      <strong>Personal details</strong> 
     </div> 
    </div> 
    <div class="panel-body"> 
     <div class="form-group"> 
      <label for="" class="col-sm-4 col-md-4 control-label"> 
       <strong>Field</strong> 
      </label> 
      <div class="col-sm-8 col-md-8"> 
       <div class="well well-sm"> 
        Male 
       </div> 
      </div> 
      <label for="" class="col-sm-4 col-md-4 control-label"> 
       <strong>Field</strong> 
      </label> 
      <div class="col-sm-8 col-md-8"> 
       <div class="well well-sm"> 
        Male 
       </div> 
      </div> 
      <label for="" class="col-sm-4 col-md-4 control-label"> 
       <strong>Field</strong> 
      </label> 
      <div class="col-sm-8 col-md-8"> 
       <div class="well well-sm"> 
        Male 
       </div> 
      </div> 
      <label for="" class="col-sm-4 col-md-4 control-label"> 
       <strong>Field</strong> 
      </label> 
      <div class="col-sm-8 col-md-8"> 
       <div class="well well-sm"> 
        Male 
       </div> 
      </div> 
      <label for="" class="col-sm-4 col-md-4 control-label"> 
       <strong>Field</strong> 
      </label> 
      <div class="col-sm-8 col-md-8"> 
       <div class="well well-sm"> 
        Male 
       </div> 
      </div> 
     </div> 
    </div> 
</div> 
<div class="col-sm-4 col-md-4"> 
    <div class="panel panel-default"> 
     <div class="panel-heading"> 
      <strong>Personal details</strong> 
     </div> 
    </div> 
    <div class="panel-body"> 
     <div class="form-group"> 
      <label for="" class="col-sm-4 col-md-4 control-label"> 
       <strong>Field</strong> 
      </label> 
      <div class="col-sm-8 col-md-8"> 
       <div class="well well-sm"> 
        Male 
       </div> 
      </div> 
     </div> 
    </div> 
</div> 
+1

Перед тем, –

+0

О да, я не видел, я спешил, когда я написал пример спасибо за исправление броска :) – Akyo

ответ

0

сетки Bootstrap составляет 12 столбцов, то есть 16. изменение col-sm-4, col-md-4 к col-sm-3 и col-md-3, чтобы поместиться в 12 столбцов.

0

Вы имеете в виду это? http://jsfiddle.net/39q8yxrv/1/

Вам просто нужно уложить две панели в одну колонку. В вашем текущем макете есть 4 столбца (col-md-4), каждая из которых имеет ширину 33%, что превышает 100% общей ширины. Итак, ваш последний столбец подталкивается ниже остальных. Тем не менее, ваш первый столбец будет содержать обе панели, если настроить как:

<div class="col-sm-4"> 
    <div class="panel">panel 1...</div> 
    <div class="panel">panel 2...</div> 
</div> 

Вы также хотите, чтобы еще раз взглянуть на документы Bootstrap на панелях: http://getbootstrap.com/components/#panels. Ваш заголовок панели и тело должны находиться внутри основного панели. Поскольку у вас есть это сейчас, ваше панельное тело находится вне контейнера панели. Если вы используете заголовок панели для стиля серого фона, вам может потребоваться просто использовать класс .well (http://getbootstrap.com/components/#wells).

Еще одно наблюдение -

<div class="col-sm-4 col-md-4"></div> 

Это является излишним. Вам нужно всего лишь использовать col-sm-4, который будет применяться к маленьким экранам и выше. Если вам необходимо изменить расположение на больших экранах, только тогда вам нужно определить другой класс, так, например:

<div class="col-sm-4 col-lg-6"></div> 

охватывают ли 12 столбцов на экстра-маленький экран, 4 колонки на малых и средних экранов, и 6 столбцов на большом и выше.

+1

Рассмотрите возможность изменения вашего кода на следующее: http://jsfiddle.net/39q8yxrv/3/ Панели были закрыто слишком рано. –

+0

Большое спасибо, но на самом деле я хотел бы, чтобы панель была нарисована так же, как вы показали, но без необходимости делать разлуку вы видите, что я имею в виду ...? Спасибо :) – Akyo

+0

Если вы не хотите, чтобы поля вокруг разделов, вы, вероятно, не хотите использовать панели. Просто дайте своим рубрикам класс «хорошо» или другой класс, чтобы соответствовать стилю. – ns1234

Смежные вопросы