【发布时间】:2018-05-07 04:19:37
【问题描述】:
好的,所以我尝试在 6 个 flexbox 项目内显示宽度和高度相等的图像。
在min-width: 768px的屏幕尺寸中,当有30%的空间时,每个flex-item增长为1,即flex: 1 30%; flex-direction: 改为row;
问题:flex item div 本身的高度和宽度是相等的,但是每个flex item 内的图像大小不一。
尝试:尝试了对齐项目:拉伸;甚至给每个图像都赋予最小高度不起作用?
在使用 flex: 1 30% 时是否还需要 flex-wrap?
我显然做错了什么,有什么想法吗?
/* ## Services */
.services-wrap {
text-align: center;
padding-top: 4rem;
}
.services-flex {
display: flex;
flex-direction: column;
flex-wrap: wrap;
}
.service-img {
min-height: 100% !important;
/*width: 100%;*/
}
@media screen and (min-width: 768px) {
.services-flex {
flex-direction: row;
padding: 0 4rem;
flex-wrap: wrap;
align-items: stretch;
max-width: 1500px;
margin: auto;
}
.flex-box {
flex: 1 30%;
/*margin: 1rem;*/
}
}
<section class="services-wrap">
<h3>OUR SERVICE</h3>
<hr>
<div class="services-flex">
<div id="service-box" class="flex-box">
<img class="service-img" src="<?php bloginfo('template_url'); ?>/images/service-img/comercial.jpg">
</div>
<div id="service-box" class="flex-box">
<img class="service-img" src="<?php bloginfo('template_url'); ?>/images/service-img/residential.jpg">
</div>
<div id="service-box" class="flex-box">
<img class="service-img" src="<?php bloginfo('template_url'); ?>/images/service-img/rural.jpg">
</div>
<div id="service-box" class="flex-box">
<img class="service-img" src="<?php bloginfo('template_url'); ?>/images/service-img/industrial.jpg">
</div>
<div id="service-box" class="flex-box">
<img class="service-img" src="<?php bloginfo('template_url'); ?>/images/service-img/other.jpg">
</div>
<div id="service-box" class="flex-box">
<img class="service-img" src="<?php bloginfo('template_url'); ?>/images/service-img/other.jpg">
</div>
</div>
</section>
更新
好的,我认为问题在于 6 个图像尺寸中有 2 个小到 200 x 250,而其余的为 600-1200 像素。因此,我通过初始设置更大的图像尺寸来解决这个问题,这样图像就不会失真并且也会相等地增长。
请注意第一个和最后一个图像高度不相等,但为什么?
请再次检查 CSS,因为我已经更新了它以匹配上面的图片!
请帮忙,谢谢!
【问题讨论】:
-
在屏幕宽度从 768 像素起,它们对我来说 每行 的高度和宽度必须相同,那有什么问题吗?
-
img { 高度:300px;宽度:300px;边框:0;为 img 设置一个固定的宽度和高度,它们将保持任何图像的宽度和高度。
-
@HarshitDamani 这会扭曲具有不同纵横比的图像。
-
@LGSon 正如帖子中提到的那样,他们确实尝试通过“拉伸”来制作相同大小的图像,等等。所以,我不知道他们是否会介意。
-
是的,你需要
flex-wrap: wrap,否则都将留在一行