html - 在 flexbox 中使图像和文本大小相同
问题描述
所以基本上我想在左边显示一些图片,在右边显示一些内容,同时使用 flexbox 使它们具有相同的高度。
结果应如下所示:
#div1 {
width: 100%;
background-color: black;
color: white;
overflow: auto;
font-size: 1vmax;
display: flex;
align-items: center;
}
#div2 {
padding: 1%;
display: flex;
align-items: center;
flex: 1;
}
#div3 {
padding: 1%;
text-align: center;
white-space: nowrap;
width: max-content;
}
<div id="div1">
<div id="div2">
<!-- Some very big pictures -->
<img src="https://via.placeholder.com/1000/" height="50em" />
<img src="https://via.placeholder.com/1000/" height="50em" />
<img src="https://via.placeholder.com/1000/" height="50em" />
<img src="https://via.placeholder.com/1000/" height="50em" />
<img src="https://via.placeholder.com/1000/" height="50em" />
</div>
<div id="div3"><span>Line 1</span><br /><span>Line 2</span></div>
</div>
但是,您可以看到,在这种情况下,图片的高度是手动设置的,并且与右侧的两行内容的高度不同。
我希望我能做这样的事情:
#div1 {
width: 100%;
background-color: black;
color: white;
overflow: auto;
font-size: 1vmax;
display: flex;
align-items: center;
}
#div2 {
padding: 1%;
display: flex;
align-items: center;
flex: 1;
}
#div3 {
padding: 1%;
text-align: center;
white-space: nowrap;
width: max-content;
}
<div id="div1">
<div id="div2">
<!-- Some very big pictures -->
<img src="https://via.placeholder.com/1000/" height="1em" />
<img src="https://via.placeholder.com/1000/" height="1em" />
<img src="https://via.placeholder.com/1000/" height="1em" />
<img src="https://via.placeholder.com/1000/" height="1em" />
<img src="https://via.placeholder.com/1000/" height="1em" />
</div>
<div id="div3"><span>Line 1</span><br /><span>Line 2</span></div>
</div>
但显然将图像的高度设置为1em
超小。
任何想法如何实现这一目标?
解决方案
您应该使用图像宽度而不是高度,也应该使用 justify-content 到父 div
.main-container{
justify-content:space-between;
}
如果你想根据 div 高度垂直居中
height: 100%;
display:flex;
flex-direction: column;
justify-content: center;
.main-container{
width:100%;
background-color:black;
color:white;
overflow:auto;
font-size:1vmax;
display:flex;
justify-content: space-between;
align-items:center;
}
.images-container{
display:flex;
align-items:center;
padding: 1%;
}
.images-container img{
width: 50px;
}
.text-container{
display: flex;
flex-direction: column;
justify-content: center;
padding: 1%;
}
<div class="main-container">
<div class="images-container">
<!-- Some very big pictures -->
<img src="https://via.placeholder.com/1000/" />
<img src="https://via.placeholder.com/1000/" />
<img src="https://via.placeholder.com/1000/" />
<img src="https://via.placeholder.com/1000/" />
<img src="https://via.placeholder.com/1000/" />
</div>
<div class="text-container">
<span>Line 1</span><br /><span>Line 2</span>
</div>
</div>
推荐阅读
- python - 正则表达式仅在 DataFrame 中用子字符串替换包含子字符串的字符串
- r - 如何制作自己的导入csv的功能?
- c - 为什么在执行 C 程序时出现错误,在终端中显示没有此类目录?
- javascript - 返回数组中元素的索引范围
- c# - 如何访问嵌套转发器中的项目数据绑定字段并对不同的数据绑定元素求和
- sql-server - 在 SQL Server 中查询大型表
- java - java中字符的八进制表示
- jquery - 您将如何优化这个基于 jQuery 的导航菜单构建器?
- r - as.Date 函数不起作用 n 数据表
- google-cloud-platform - 在删除之前检查计算引擎实例是否存在