栅格系统,
把屏幕分成了十二份
然后是设备监听
bootstrap源码
下边这个div在屏幕宽度>767px的时候占3份,<768px占6份
也就是在电脑宽屏上横屏可以放四个(12/3),手机上横屏可以放两个(12/6)
<div class="col-xs-6 col-sm-3" style="background-color: #dedef8; box-shadow: inset 1px -1px 1px #444, inset -1px 1px 1px #444;">
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit.</p>
</div>
可以用grid布局不用设备监听做一个栅格系统
grid-template-columns:repeat(auto-fill, minmax(400px, 1fr));
完整例子
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>JS Bin</title>
<style> span { font-size: 2em; } #container { display: grid; grid-template-columns:repeat(auto-fill, minmax(400px, 1fr)); } .item { font-size: 2em; height: 200px; text-align: center; border: 1px solid #e5e4e9; } .item-1 { background-color: #ef342a; } .item-2 { background-color: #f68f26; } .item-3 { background-color: #4ba946; } .item-4 { background-color: #0376c2; } .item-5 { background-color: #c077af; } .item-6 { background-color: #f8d29d; } .item-7 { background-color: #b5a87f; } .item-8 { background-color: #d0e4a9; } .item-9 { background-color: #4dc7ec; } </style>
</head>
<body>
<div id="container">
<div class="item item-1">1</div>
<div class="item item-2">2</div>
<div class="item item-3">3</div>
<div class="item item-4">4</div>
<div class="item item-5">5</div>
<div class="item item-6">6</div>
<div class="item item-7">7</div>
<div class="item item-8">8</div>
<div class="item item-9">9</div>
</div>
</body>
</html>
效果