css之grid布局(网格布局)
简述:
网格布局顾名思义就是将元素呈现为网状的整齐布局
简单使用:
<div>
<div class="test">
<div class="item">1</div>
<div class="item">2</div>
<div class="item">3</div>
<div class="item">4</div>
<div class="item">5</div>
<div class="item">6</div>
<div class="item">7</div>
<div class="item">8</div>
<div class="item">9</div>
</div>
</div>
<style scoped lang="scss">
.test{
display: grid;
grid-template-columns: repeat(3, 1fr);//此处可以有多种写法,repeat参数一表示分成几等分, fr 单位代表网格容器中可用空间的一等份。
width: 600px;
height: 400px;
background-color: rgb(39, 203, 170);
.item{
// width: 100px;
// height: 100px;
background-color: skyblue;
border: 1px solid rgb(89, 89, 89);
}
}
</style>
效果展示:
用处:
可以解决flex布局元素最后一行左对齐的难点(会自动左对齐)
可以设置每一列的宽度来实现响应式布局,比如:
grid-template-columns: repeat(auto-fill,minmax(100px,1fr));//当前元素的宽度不能写死用百分之类的
//100px表示元素宽度小于100px时则重新布局
说明:
网格布局每一列每一行都可以单独的设置 ,并且写法也很多,大部分笨拙的写法都有简写形式
具体细节或属性:https://www.runoob.com/css3/css-grid.html