javascript - 为什么我的 masonry.js 元素相互重叠?

标签 javascript jquery css masonry

我正在尝试使用流行的 masonry.js库,但所有 masonry 元素都相互重叠,而不是 masonry 风格。

我已经多次阅读文档,我确信答案就在某处,但我找不到。

jQuery('.grid').masonry({
  columnWidth: '.grid-sizer',
  gutter: '.gutter-sizer',
  itemSelector: '.grid-item'
});
.grid-sizer,
.grid-item {
  width: 40%;
}

.gutter-sizer {
  width: 4%;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="//unpkg.com/masonry-layout@4/dist/masonry.pkgd.min.js"></script>

<div class="grid">
  <div class="grid-item">
    Some text here
  </div>
  <div class="grid-item">
    Some Other here
  </div>
  <div class="grid-item">
    Blah blah blah
  </div>
  <div class="grid-item">
    asdfasdff
  </div>
  <div class="grid-item">
    214421342143
  </div>
  <div class="grid-item">
    Some text here
  </div>
  <div class="grid-item">
    Some text here
  </div>
  <div class="grid-item">
    Some text here
  </div>
</div>

最佳答案

自己解决了。

我忘记添加 gutter-sizergrid-sizer html。

jQuery('.grid').masonry({
  columnWidth: '.grid-sizer',
  gutter: '.gutter-sizer',
  itemSelector: '.grid-item'
});
.grid-sizer,
.grid-item {
  width: 40%;
}

.gutter-sizer {
  width: 4%;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="grid">
  <div class="grid-sizer"></div>
  <div class="gutter-sizer"></div>
  <div class="grid-item">
    Some text here
  </div>
  <div class="grid-item">
    Some Other here
  </div>
  <div class="grid-item">
    Blah blah blah
  </div>
  <div class="grid-item">
    asdfasdff
  </div>
  <div class="grid-item">
    214421342143
  </div>
  <div class="grid-item">
    Some text here
  </div>
  <div class="grid-item">
    Some text here
  </div>
  <div class="grid-item">
    Some text here
  </div>
</div>

<script src="//unpkg.com/masonry-layout@4/dist/masonry.pkgd.min.js"></script>

关于javascript - 为什么我的 masonry.js 元素相互重叠?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52693506/

相关文章:

html - 使用 CSS 用同级元素填充空白区域

javascript - 如何在 Vue 的插件中添加全局函数,如 Create、Methods、Mounted?

javascript - Angular2 通过选择器传递对象

javascript - jCarouselLite 不适用于 <3 个列表项

javascript - 如何使用 jquery 和 PHP session 变量

javascript - 需要 HTML5,如果为空,则打开折叠并聚焦所需元素

JavaScript:如何从 Codecademy 重新创建 "Animate Your Name"类(class)?

css - 默认网页宽度 - 1024px 还是 980px?

javascript - Internet Explorer 对象预期错误

javascript - 当 URL 更改时调用 javascript 函数