【发布时间】:2015-11-16 15:44:15
【问题描述】:
我正在尝试对图像进行布局,以便在移动设备看到它们时将它们分成 2 列,而当更大的设备看到它们时,它们会分成 3 列。很简单。
但是,有一个问题。我的每张图片都有一个标题,有些比其他的长,因此(在移动视图中)当图像在 2 列中彼此下方时,图像可能会留下间隙,因为它上面的图像的标题会干扰用它(或其他东西)。
所以它应该是这样的: (其中 captn 表示标题)
[image] [image]
[captn] [captn]
[image] [image]
[captn] [captn]
但是,它看起来像这样:
[image] [image]
[captn] [captn]
[image]
[captn]
[image]
[captn]
因为第一张图片的标题稍长。
简单的解决方案是缩短第一张图片的标题,但我要保留细节。非常感谢您的帮助:)
我当前的代码:
部分 HTML:
<ul id="pictures">
<li>
<a href="img/blocks.jpg">
<img src="img/blocks.jpg" alt="" />
<p>THIS IS A LONG, LONG, LONG, LONG, LONG, LONG MESSAGE.......</p>
</a>
</li>
<li>
<a href="img/code.jpg">
<img src="img/code.jpg" alt="" />
<p>Beautiful code.</p>
</a>
</li>
<li>
<a href="img/skier.jpg">
<img src="img/skier.jpg" alt="" />
<p>Ski jumper.</p>
</a>
</li>
<li>
<a href="img/android.jpg">
<img src="img/android.jpg" alt="" />
<p>Android intelligence is powerful.</p>
</a>
</li>
<li>
<a href="img/woodland.jpg">
<img src="img/woodland.jpg" alt="" />
<p>An adventurous woodland.</p>
</a>
</li>
</ul>
部分 CSS:
/*IMAGE STYLING*/
#pictures {
margin: 0;
padding: 0;
list-style: none;
}
#pictures li {
float: left;
width: 45%;
margin: 2.5%;
background-color: black;
color: white;
}
#pictures li a p {
margin: 0;
padding: 5%;
font-size: 0.75em;
color: white;
}
部分响应式 CSS:
@media screen and (min-width: 480px) {
/*TWO COLUMN LAYOUT*/
#primary {
width: 50%;
float: left;
}
#secondary {
width: 40%;
float: right;
}
/*Picture page*/
#pictures li {
width: 28.3333%
}
#pictures li:nth-child(4n) {
clear: left;
}
谢谢
【问题讨论】:
-
谢谢大家的回复!我设法找到了解决方案:)
标签: html css responsive-design