【问题标题】:CSS 3 Column responsive gridCSS 3 列响应式网格
【发布时间】:2014-11-20 20:43:30
【问题描述】:

我想做一个 3 列的响应式网格布局,其中包含很多浮动的 <div>s,没有分组,但我失败了,而不是响应式的,因为在我的第一个媒体查询之后它工作正常,但是我无法弄清楚正常的桌面视图。可能是因为在桌面上(低至 990px​​)布局应该是这样的:第一个 col(左对齐)没有左边距或填充比 20px 间隙比第二个 col(对齐中心)再 20px 间隙和第三个 col(对齐右)没有右边距或填充。

html 看起来像这样:

<div class="container">
  <div class="item">...</div>
  <div class="item">...</div>
  <div class="item">...</div>
  <div class="item">...</div>
  <div class="item">...</div>
  <div class="item">...</div>
  <div class="item">...</div>
  <div class="item">...</div>
  <div class="item">...</div>
  <div class="item">...</div>
  <div class="item">...</div>
</div> 

CSS:

* {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.container {
  max-width: 904px;
  margin: 0 auto;
  overflow: hidden;
}

.item {
  width: 288px;
  float: left;
}

@media screen and (max-width: 960px) {
  .container {
    width:98%;
   }

  .item {
    width: 50%;
    padding: 1% 4%;
    margin: 0;
  }
}
@media screen and (max-width: 600px) {
  .item {
    width: auto;
    padding 1% 4%;
    margin: 0;
   }
}

我正在考虑使用nth-child(),但无法找出正确的顺序,因为假设我希望中间的每个元素都有 20px 的边距,那么它将是这样的:2,5,8,11 ,14,..,n 一段时间后,我正在考虑使用 Masonry js,但我不想使用 js,那么是否有任何基于 css 的解决方案?

【问题讨论】:

  • 是的,稍后我将编辑问题。

标签: html css responsive-design


【解决方案1】:

你的第 n 个孩子的想法可能会奏效。试试:

.item:nth-child(3n+2)
{
    background-color:#f00;
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-17
    • 2015-12-16
    • 2013-09-23
    • 2011-11-03
    相关资源
    最近更新 更多