【发布时间】:2016-02-17 16:33:44
【问题描述】:
我正在构建一个跨越页面宽度的小网格(即没有外边距或填充),并在每个网格项之间包含一个装订线。
我的问题是,当从最后一个项目中删除填充/装订线时,它会导致该项目变得比其他项目大。
在这里看一支笔:
http://codepen.io/backtofront/pen/yerpvX
相关商品代码在这里:
[class*='column-'] {
float: left;
padding-right: 10px;
padding-bottom: 10px;
width: 100%;
min-height: 1px;
&:last-of-type {
padding-right: 0;
}
img {
width: 100%;
display: block;
}
}
我正在寻找一种方法来实现这一点,而无需在每个项目周围添加填充/边距。
谢谢。
【问题讨论】:
-
图像的高度(和宽度)是通过图像的空间量计算的。通过删除最后一个元素上的右填充,与其他图像相比,最后一个图像有更多的空间来变大。如果我删除您的
last-of-type选择器,它会解决问题,但会在右侧留下一些填充,我认为您不想要? -
这就是发明 flexbox 的原因。
-
感谢您的解释 - 我明白它为什么会这样。是的,这就是我面临的问题 - 试图在最后没有填充的情况下获得全宽行。