【发布时间】:2013-07-21 22:45:29
【问题描述】:
我已经在这里看到过这个帖子了几次,但都没有一个有效的解决方案。
我正在使用 jquery masonry 来布置许多 div,其中包含图像和标题。
我设置了“height:auto;”砌体中每个项目的 css。 我预计一旦窗口加载,砌体就会生效并按应有的方式布置内容。不幸的是,它加载了 4 列,但图像在高度上都是重叠的。如果我在 px 中为 css 设置高度,那么它可以工作,但是网站是响应式的,我最好需要自动高度,因为我不想通过每个媒体查询更改 css 高度...
感谢任何帮助:)
谢谢
JS代码为:
$(window).load(function()
{
var columns = 4,
setColumns = function() { columns = $( window ).width() > 700 ? 4 : $( window ).width() > 480 ? 2 : 1 };
setColumns();
$( window ).resize( setColumns );
$( '#container' ).masonry(
{
itemSelector: '.item',
gutterWidth: 66,
isFitWidth: true,
isAnimated: true,
columnWidth: function( containerWidth ) { return containerWidth / columns; }
});
});
【问题讨论】:
-
对我来说听起来像是 CSS 问题。你能展示一个你的页面的例子吗?将这些 div 设置为
overflow: hidden怎么样? -
感谢您的回复,我目前没有任何地方可以托管这些文件。但这里是元素的 CSS:
#container{ max-width:1200px; margin:0 auto; text-align:center; } .item { width: 250px; margin-bottom:50px; }和 html:<div id="container" class="js-masonry" data-masonry-options='{ "gutter": 66, "itemSelector": ".item" }'> <div class="item"><img style="width:100%" src="graphic.jpg" /></div> </div>