javascript - 均匀间隔的响应式瓷砖网格 - 纯 css 有可能吗?

标签 javascript jquery html css

我有一个网格,里面有方框,每个方框大小相同,标记也相同。

我想做的是让方框填满页面的整个宽度,并且它们之间的间隙均匀。这个想法是,如果浏览器窗口移动,盒子元素将重新堆叠。

我研究了各种方法来实现这一点,包括使用 bootstrap 3 中的网格系统,以及 HERE 中的网格系统。

我也研究过使用 JS 插件,比如 Masonry,尽管这似乎有点过分,因为所有的瓷砖尺寸都相同。

目前我几乎可以在这里工作:http://jsfiddle.net/3xshcn7p/

当前方法的唯一问题是,如果浏览器窗口小于 719 像素但大于 481 像素,它将只显示其中的 2 个框,并在右侧留下一大块空白。

当屏幕不够大以容纳每行上的下一个框数时,所有框之间都会出现同样的问题。

是否可以纯粹使用 css 或必须使用 js 来实现?

最佳答案

您可以使用flexbox 方法来解决这个问题。

justify-content: space-around 如果布局的所有元素周围需要均匀的空间,则使用。

justify-content: space-between 需要在布局的元素之间均匀间隔。

body {
  box-sizing: border-box;
  height: 100%;
  background: #336633;
}
.wrapper {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-around;
}
.box {
  width: 200px;
  height: 250px;
  background: white;
  float: left;
  margin: 20px;
}
<div class="wrapper">
  <div class="box"></div>
  <div class="box"></div>
  <div class="box"></div>
  <div class="box"></div>
  <div class="box"></div>
  <div class="box"></div>
  <div class="box"></div>
  <div class="box"></div>
  <div class="box"></div>
  <div class="box"></div>
  <div class="box"></div>
  <div class="box"></div>
  <div class="box"></div>
  <div class="box"></div>
  <div class="box"></div>
  <div class="box"></div>
  <div class="box"></div>
  <div class="box"></div>
  <div class="box"></div>
  <div class="box"></div>
  <div class="box"></div>
  <div class="box"></div>
  <div class="box"></div>
  <div class="box"></div>
  <div class="box"></div>
  <div class="box"></div>
  <div class="box"></div>
  <div class="box"></div>
</div>
<!--wrapper-->

关于javascript - 均匀间隔的响应式瓷砖网格 - 纯 css 有可能吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31161087/

相关文章:

indexOf 内的 JavaScript 变量

javascript - 如何在 NestJS 中编写嵌套 DTO

javascript - 最后一个 div 后有很多白色可滚动空间 - 调整窗口大小正在修复它

javascript - jQuery 通过选择器播放音频

javascript - 在 .getJson() 中传递同一参数的多个值

javascript - 如何在 jquery 中构建 HTML 元素及其属性的数组?

javascript - 如何在数据类型为 'text' 的 jQuery 中执行跨域 ajax?

jquery - 在 Angular 指令中以 noconflict 运行 jQuery 插件 diff2html

javascript - 如何在 HTTP POST 请求中处理二维数组

c# - 如何将 css 关联到从服务器接收到的 html 字符串?