【发布时间】:2016-03-22 02:50:07
【问题描述】:
你好!我试图让这个砖石网格正确显示,这意味着所有边的空间相等,它应该像here一样均匀堆叠。
页面首次加载时,它看起来像this。所有的盒子都折叠在彼此的顶部,就像每个盒子后面都缺少一列。当您刷新页面时,它看起来像this,这正是我正在寻找的,除了全宽应该有 4 列但它只显示为 2,与上次相同.. 就像有一个边距在列之间,而不是像应该有的那样有另一列。框下方的间距正是我想要的所有方面。
这是我的代码:
脚本标签
<script src="https://npmcdn.com/masonry-layout@4.0/dist/masonry.pkgd.min.js"> </script>
HTML/jQuery:
<div id="MainContent" class="fullwidth">
<div style="width: 100%;height:20px;clear:both;"></div>
<div class="title">BOLD COLORS</div>
<div class="subtitle">Scrubs & Beyond Lookbook</div>
<div class="grid">
<div class="grid-sizer"></div>
<div class="product-box grid-item">
<a href="#"><img src="http://s7d2.scene7.com/is/image/scrubs/prod1?$graphics$&scl=1"></a>
Here is one with just a little bit of text
</div>
<div class="product-box grid-item">
<a href="#"><img src="http://s7d2.scene7.com/is/image/scrubs/prod1?$graphics$&scl=1"></a>
Here is one with just a little bit of text, plus a lot more text so we can get a good idea of how these things are going to stack eventually
</div>
<div class="product-box grid-item">
<a href="#"><img src="http://s7d2.scene7.com/is/image/scrubs/prod1?$graphics$&scl=1"></a>
</div>
<div class="product-box grid-item">
<a href="#"><img src="http://s7d2.scene7.com/is/image/scrubs/prod1?$graphics$&scl=1"></a>
</div>
<div class="product-box grid-item">
<a href="#"><img src="http://s7d2.scene7.com/is/image/scrubs/prod1?$graphics$&scl=1"></a>
</div>
<div class="product-box grid-item">
<a href="#"><img src="http://s7d2.scene7.com/is/image/scrubs/prod1?$graphics$&scl=1"></a>
</div>
<div class="product-box grid-item">
<a href="#"><img src="http://s7d2.scene7.com/is/image/scrubs/prod1?$graphics$&scl=1"></a>
</div>
<div class="product-box grid-item">
<a href="#"><img src="http://s7d2.scene7.com/is/image/scrubs/prod1?$graphics$&scl=1"></a>
</div>
<div class="product-box grid-item">
<a href="#"><img src="http://s7d2.scene7.com/is/image/scrubs/prod1?$graphics$&scl=1"></a>
</div>
<div class="product-box grid-item">
<a href="#"><img src="http://s7d2.scene7.com/is/image/scrubs/prod1?$graphics$&scl=1"></a>
</div>
</div><!-- end grid -->
<div style="width: 100%;height:20px;clear:both;"></div>
</div>
<script>
$('.grid').masonry({
// options
itemSelector: '.grid-item',
columnWidth: 290,
gutter: 10
});
</script>
CSS:
.title {
font-family: "HelveticaNeueW01-65Medi",sans-serif;
color: #e23342;
font-size: 30px;
width: 100%;
text-align: center;
letter-spacing: 6px;
}
.subtitle {
font-family: "HelveticaNeueW01-45Ligh";
color: #8d5291;
font-size: 20px;
width: 100%;
text-align: center;
padding-top: 10px;
padding-bottom: 20px;
}
.product-box {
padding: 5px;
background-color: #f5f5f5;
margin-right: 10px;
margin-bottom: 20px;
float: left;
}
.grid-item { width: 290px; }
.grid {
background: none!important;
}
有人可以帮我弄清楚为什么这不能正确显示吗? The Masonry page I am working from。 我知道它必须是我想念的简单的东西,但我就是不知道它是什么!提前致谢!
【问题讨论】:
-
对我来说没问题。一切看起来都应该如此。尝试其他浏览器
-
@HonzaSedloň 几乎是正确的,应该有 4 列而不是 2 列,但我不知道为什么要在它们之间添加所有空间
-
我仍然认为,一切都很好。看:ctrlv.cz/XJ87 可能你的分辨率有问题。
-
@HonzaSedloň 第一行看起来不错,但第二行第一项应该一直在左边,这有意义吗?它应该是一个完整的网格
-
您不需要 fitColumns。只用砖头。并摆脱产品盒上的边距,它们会弄乱您的布局。还将整个砌体代码包装在
jQuery(document).ready(function($) { // your code here });调用中