html - 具有水平滚动的图像网格布局

标签 html css image grid-layout

grid layout with horizontal scroll

这就是我正在尝试构建的。正方形应该是正方形图像。数字显示它们应添加到布局中的顺序。我发布了similar question但我需要在右端添加新的小方形图像。此外,整个内容应该是水平滚动的。

这是一个 FIDDLE 使用我的代码:

HTML:

<div id="big_wrap">
    <div></div>
    <div></div>
    <div></div>
    <div></div>
</div>
<div id="small_wrap">
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
</div>

CSS:

div {
    float:left;
}
div > div{
    background:#2C3E50;
}
#big_wrap,#small_wrap{
    width:50%;
}
#big_wrap > div{
    width:48%;
    padding-bottom:48%;
    margin:1%;
}
#small_wrap > div{
    width: 31%;
    padding-bottom : 31.3%;
    margin:1%;
}

最佳答案

要使布局水平滚动,您需要使容器比视口(viewport)更宽。您可以为此添加 body{width:120%;}

然后,您只需将另一列附加到布局中,并修复现有列的宽度,使所有列的宽度总和等于 100%。

如果您需要在方 block 内添加一些内容,我建议您查看 this answer

这是一个 FIDDLE

还有代码。

将其添加到您的 HTML 中:

<div id="right_col">
    <div></div>
    <div></div>
    <div></div>
</div>

CSS:

body{
    width:120%;
}
div {
    float:left;
}
div > div{
    background:#2C3E50;
}
#big_wrap,#small_wrap{
    width:43%;
}
#right_col{
    width:14%;
}
#big_wrap > div{
    width:48%;
    padding-bottom:48%;
    margin:1%;
}
#small_wrap > div{
    width: 31%;
    padding-bottom : 31.3%;
    margin:1%;
}
#right_col > div{
    width:95%;
    margin:2.5% 5% 5% 0;
    padding-bottom:95.1%;
}

元素的宽度/填充底部可能需要一些调整,以便它们都具有相同的大小。

关于html - 具有水平滚动的图像网格布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23156598/

相关文章:

python - lxml修改标签防止

html - 如何用CSS包裹div?

javascript - 输入按钮将显示按钮名称和值分开

swift - 对图像进行着色,快速取错颜色

android - 如何在 Android 中获取微调器提示图像?

javascript - 无需 jquery 插件即可构建自定义分页逻辑

jquery - 使用scrollTo, "next"section 无重复代码

css - 在不重新加载页面的情况下重新加载 CSS 样式表?

html - 移动设备的拉伸(stretch)布局

ios - 如何在 Swift 3.0 的 Imageview 上显示 .jpg url 图像