html - 奇数行和偶数行不同的div算吗?

标签 html css

我这里有一个 fiddle - https://jsfiddle.net/x18qLnfx/ 如何使用 nth-child(odd) 和 nth-child(even) 在奇数行上制作 3 个相同宽度的 div,在偶数行上制作 4 个相同宽度的 div?

最佳答案

解决方案一:

这可以解决问题,在每 7n 个格(7、14、21 ...)上添加 25% 的 margin-right 以占据整个空间,因此这一行只有 3 个格:

.wrapper>div:nth-child(7n) {
  margin-right: 25%;
}

.wrapper>div {
  padding: 0;
  margin: 0;
}

.wrapper>div {
  width: 25%;
  background: red;
  display: inline-block;
  border: 1px solid green;
  box-sizing: border-box;
}

.wrapper>div:nth-child(7n) {
  margin-right: 25%;
}
<div class="wrapper">
  <div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Saepe laboriosam nisi deserunt nesciunt culpa maxime aliquid perspiciatis, officiis! Veritatis temporibus minus reprehenderit consectetur sunt, omnis totam laboriosam mollitia? Eos, repellendus.</div><div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Saepe laboriosam nisi deserunt nesciunt culpa maxime aliquid perspiciatis, officiis! Veritatis temporibus minus reprehenderit consectetur sunt, omnis totam laboriosam mollitia? Eos, repellendus.</div><div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Saepe laboriosam nisi deserunt nesciunt culpa maxime aliquid perspiciatis, officiis! Veritatis temporibus minus reprehenderit consectetur sunt, omnis totam laboriosam mollitia? Eos, repellendus.</div><div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Saepe laboriosam nisi deserunt nesciunt culpa maxime aliquid perspiciatis, officiis! Veritatis temporibus minus reprehenderit consectetur sunt, omnis totam laboriosam mollitia? Eos, repellendus.</div><div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Saepe laboriosam nisi deserunt nesciunt culpa maxime aliquid perspiciatis, officiis! Veritatis temporibus minus reprehenderit consectetur sunt, omnis totam laboriosam mollitia? Eos, repellendus.</div><div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Saepe laboriosam nisi deserunt nesciunt culpa maxime aliquid perspiciatis, officiis! Veritatis temporibus minus reprehenderit consectetur sunt, omnis totam laboriosam mollitia? Eos, repellendus.</div><div>Lorem ipsum dolor sit amet, consectetur adipis icing elit. Saepe laboriosam nisi deserunt nesciunt culpa maxime aliquid perspiciatis, officiis! Veritatis temporibus minus reprehenderit consectetur sunt, omnis totam laboriosam mollitia? Eos, repellendus.</div><div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Saepe laboriosam nisi deserunt nesciunt culpa maxime aliquid perspiciatis, officiis! Veritatis temporibus minus reprehenderit consectetur sunt, omnis totam laboriosam mollitia? Eos, repellendus.</div><div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Saepe laboriosam nisi deserunt nesciunt culpa maxime aliquid perspiciatis, officiis! Veritatis temporibus minus reprehenderit consectetur sunt, omnis totam laboriosam mollitia? Eos, repellendus.</div><div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Saepe laboriosam nisi deserunt nesciunt culpa maxime aliquid perspiciatis, officiis! Veritatis temporibus minus reprehenderit consectetur sunt, omnis totam laboriosam mollitia? Eos, repellendus.</div><div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Saepe laboriosam nisi deserunt nesciunt culpa maxime aliquid perspiciatis, officiis! Veritatis temporibus minus reprehenderit consectetur sunt, omnis totam laboriosam mollitia? Eos, repellendus.</div><div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Saepe laboriosam nisi deserunt nesciunt culpa maxime aliquid perspiciatis, officiis! Veritatis temporibus minus reprehenderit consectetur sunt, omnis totam laboriosam mollitia? Eos, repellendus.</div><div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Saepe laboriosam nisi deserunt nesciunt culpa maxime aliquid perspiciatis, officiis! Veritatis temporibus minus reprehenderit consectetur sunt, omnis totam laboriosam mollitia? Eos, repellendus.</div><div>Lorem ipsum dolor sit amet, consectetur adipis icing elit. Saepe laboriosam nisi deserunt nesciunt culpa maxime aliquid perspiciatis, officiis! Veritatis temporibus minus reprehenderit consectetur sunt, omnis totam laboriosam mollitia? Eos, repellendus.</div>
</div>

方案二(等宽):

.wrapper>div:nth-child(7n + 7) with width: calc(100%/3) 你可以控制不同的行,每 7 div 将它们分组,对于组中的第 5 个、第 6 个、第 7 个,你将宽度设置为 100%/3,其余为 25%,因此具有以下效果:

.wrapper>div {
  padding: 0;
  margin: 0;
}

.wrapper>div {
  width: 25%;
  height: 100px;
  background: red;
  display: inline-block;
  border: 1px solid green;
  box-sizing: border-box;
}
.wrapper>div:nth-child(7n + 5),
.wrapper>div:nth-child(7n + 6),
.wrapper>div:nth-child(7n + 7) {
  width: calc(100% / 3);
}
<div class="wrapper">
<div>
</div><div>
</div><div>
</div><div>
</div><div>
</div><div>
</div><div>
</div><div>
</div><div>
</div><div>
</div><div>
</div><div>
</div><div>
</div><div>
</div>
</div>

关于html - 奇数行和偶数行不同的div算吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44087429/

相关文章:

html - 网站图标不在正确的位置?

html - 表格单元格在 Google Chrome PC 中丢失边框

javascript - Webkit 关键帧 : Calculate translate amount using JavaScript or other

html - CSS :not() with [attribute*=value] selector not works properly

html - css 将填充添加到背景位置 [仅限 css]

JQuery $ (".some-element-id").length 在我使用 JQuery 创建它们后返回 0

php - MySQL:如果值存在则对该行进行更新,如果值不存在则进行插入

css - Opera 的可见性转换错误是否有 CSS 解决方法?

javascript - 增加全日历事件后面的插槽可点击区域

javascript - 如何让window.location.href执行POST请求