本文接上一篇博客,继续介绍一些MDL网格(Grid)布局的手段。
1. 消除单元格间隙
在默认的mdl-grid类中,它内部的单元格之间会有一定的间隙(margin)。有时候,我们在布局时,可能不希望出现这样的间隙。此时可以做如下设置。
<div class="mdl-grid mdl-grid--no-spacing">
<div class="mdl-cell mdl-cell--5-col gray-box">单元格1</div>
<div class="mdl-cell mdl-cell--2-col gray-box">单元格2</div>
<div class="mdl-cell mdl-cell--2-col gray-box">单元格3</div>
<div class="mdl-cell mdl-cell--3-col gray-box">单元格4</div>
<div class="mdl-cell mdl-cell--3-col gray-box">单元格5</div>
</div>
代码第01行,为div容器设置了mdl-grid--no-spacing类,表示容器内部的单元格不留间隙。代码的执行效果如下。
2. 单元格的对齐方式
a. 居中对齐
在mdl-grid下的容器,默认是从左向右排列。如果要单元格居中排列,可以做如下设置。
<div class="mdl-grid mdl-grid--no-spacing">
<div class="mdl-layout-spacer"></div>
<div class="mdl-cell mdl-cell--3-col gray-box">单元格6</div>
<div class="mdl-layout-spacer"></div>
</div>
代码的第2和第4行分别在单元格6的左右两边添加了一个class为mdl-layout-spacer的div元素。这两个元素会把一行的剩余空间平分成两份,各自占据一份。这样,就形成了单元格6居中对齐的效果。见下图。