#css #twitter-bootstrap-3
#css #twitter-bootstrap-3
Вопрос:
Возможно ли pull/push divs of a column
из another column
в сеточной системе начальной загрузки? Например:
При просмотре на рабочем столе: это так:
Parent Column 1 | Parent Column 2
First Content | Second Content
Third Content | Fourth Content
В мобильном представлении это выглядит так:
Parent Column 1
First Content
Second Content
Parent Column 2
Third Content
Fourth Content
Пожалуйста, взгляните на эту скрипку, чтобы понять, что я пытаюсь иметь в виду.Заранее спасибо.
Ответ №1:
Вы можете достичь этого, используя сетку bootstrap.
.first {
background: yellow;
height: 300px;
}
.second {
background: red;
height: 100px;
color: white;
}
.third {
background: green;
height: 300px;
color: white;
}
.fourth {
background: blue;
height: 100px;
color: white;
}
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" />
<div class="container-fluid">
<div class="row">
<div class="col-sm-6 col-xs-12 first">
FIRST
</div>
<div class="col-sm-6 col-xs-12 second">
SECOND
</div>
<div class="col-sm-6 col-xs-12 third">
THIRD
</div>
<div class="col-sm-6 col-xs-12 fourth">
FOURTH
</div>
</div>
</div>
Или вы можете использовать Masonry JS:
var $container = $('.masonry-container');
$container.masonry({
columnWidth: '.item',
itemSelector: '.item'
});
.first {
background: yellow;
height: 300px;
}
.second {
background: red;
height: 100px;
color: white;
}
.third {
background: green;
height: 300px;
color: white;
}
.fourth {
background: blue;
height: 100px;
color: white;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/masonry/4.1.1/masonry.pkgd.min.js"></script>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" />
<div class="container-fluid">
<div class="row masonry-container">
<div class="col-sm-6 col-xs-12 first item">
FIRST
</div>
<div class="col-sm-6 col-xs-12 second item">
SECOND
</div>
<div class="col-sm-6 col-xs-12 third item">
THIRD
</div>
<div class="col-sm-6 col-xs-12 fourth item">
FOURTH
</div>
</div>
</div>
Комментарии:
1. На большом экране это выглядит так: i.imgur.com/bsobN7g.png
2. Спасибо! Но, я думаю, мне понадобится «Третий» div ниже «Первого» div и «Четвертый» div ниже «Второго» div для просмотра на рабочем столе.
Ответ №2:
Я думаю, что проблема скорее связана с плавающей точкой, потому что ваши столбцы имеют переменную высоту. Создайте специальный класс, чтобы правильно отображать 2-й и 3-й столбцы на больших экранах..
@media (min-width: 992px) {
.pull-md-right {
float:right;
}
}
И используйте это так..
<div class="row">
<div class="col-md-6">
<div class="first">First</div>
</div>
<div class="col-md-6 pull-md-right">
<div class="second">Second</div>
</div>
<div class="col-md-6 pull-md-right">
<div class="third">Third</div>
</div>
<div class="col-md-6">
<div class="fourth">Fourth</div>
</div>
</div>
http://codeply.com/go/CYteNdheKS
В Bootstrap 4 включены адаптивные поплавки, поэтому вам не понадобится дополнительный CSS.
Комментарии:
1. Отличное решение! Но, я думаю, мне понадобится «Третий» div ниже «Первого» div и «Четвертый» div ниже «Второго» div для просмотра на рабочем столе.