html - 删除边距响应缩略图网格

标签 html css css-selectors thumbnails

我创建了一个具有响应式 4-3-2-1 列结构的缩略图网格:25%、33.33%、50%、100%。但我希望能够删除每个状态下每个缩略图的最后边距,因此有 4 列(25%、25%、25%、25%)或 3 列(33.33%、33.33%、33.33%)等。现在最后一个缩略图跳到其他缩略图下面。我试图为此使用 :nth-child 。

使用 div、无序列表 (ul) 或其他东西构建缩略图网格的最佳方法是什么?

谁能帮我解决这个问题?谢谢;-)

这里的例子:

Fiddle

Codepen

.thumb:nth-child(4n) {
margin-right: 0;}

最佳答案

选项 1

使用box sizing .将 margin 更改为 padding 并在 .thumb 上使用 box-sizing: border-box;。这意味着在输入百分比宽度时会考虑填充和边框。

JSFIDDLE

选项 2

使用calc .示例:

.thumb {
   width: calc(50% - 20px);
}

JSFIDDLE

我会让您根据浏览器支持情况来决定哪个更适合您。 :)

更新

要去掉右边的边距,你可以使用nth-child , 类似于您的建议:

@media all and (max-width: 800px) and (min-width: 601px) {
    .thumb {
        width: 50%;
    }
    .thumb:nth-child(2n+0) {
        padding: 0 0 20px 10px;
    }
}

请参阅 this page 上的底部示例.

JSFIDDLE

关于html - 删除边距响应缩略图网格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27987317/

相关文章:

javascript - 我可以使用/包含 HTML 部分,客户端,使用 EJS(或类似的)吗?

javascript - Bootstrap 3 Tabs - 扩展标签的宽度 100%

JavaScript 和 CSS 版本控制

CSS:我可以添加缓和过渡到图像颜色变化悬停效果吗?

html - 列出分组部分的标题

html - 如何在通过 div 元素构建的表中进行嵌套枚举?

javascript - JS : Clicking on a object from array

html - 为文本的每个字符指定不同颜色的最小 HTML/CSS

css - .something :first-child as a selector? 的性能

ios - 高效地迭代 subview 并返回过滤后的 UIView 子集