为了兼容旧版本60左右的谷歌浏览器,放弃使用flex布局中gap属性
还是使用margin兼容性最好,但需要清除最后一行的margin
https://www.jianshu.com/p/db65ae0a3c2e
https://www.jianshu.com/p/db65ae0a3c2e
/* 使用选择器重置最后一行的格子下边距为0 */
.item:nth-child(3n+1):nth-last-child(-n+3),
.item:nth-child(3n+1):nth-last-child(-n+3)~.item{
margin-bottom: 0;
}
nth-last-child(-n+3)
选择的是容器中的最后3个元素
nth-child(3n+1)
选择第(3n+1)
个元素,也就是第一列的元素
两者的交集恰好就是最后一行的第一个元素,也就是左下角的这个元素。
最后一行的元素个数并不确定,为了完整的匹配到其后的元素,使用通用兄弟选择器~来选中该目标后面的兄弟元素。
这样两者结合便可以保证总是找全最后一行的元素,而不用管该行是否占满。