html - 如何将图像大小调整为行高,同时显示居中文本?
问题描述
我需要显示这样的表格,但即使表格中的图像大小不同,也要让行的高度相同。该表需要响应,以便所有内容都随着窗口大小的变化而调整大小。
每行的当前代码是这样的:
<tr width="100%" height="10%" style="background-color:rgba(158,158,158,1); color: #FFFFFF">
<td width="25%" style="margin:0; padding:4" align="left">Wed <b>Sep 29</b></td>
<td width="100%" style="padding:4;display:flex; align-items:center; justify-content: center;" align="center">@ <img src="https://upload.wikimedia.org/wikipedia/commons/8/81/Pittsburgh_Pirates_logo_2014.svg" width="15%" style="padding:4"> Pirates</td>
<td width="25%" style="padding:4;margin:0" align="right">6:35 PM</td>
</tr>
完整的代码在这里。
这样做的问题是行大小根据徽标的大小而有所不同。您可以看到 Pirates 的 logo 比 Cardinals 的 logo 大,因此 Pirates 的行高更高。
根据此答案,我已成功将徽标的大小调整为与行相同的高度。不过,这涉及绝对定位徽标。代码在这里(参见我进行更改的第 7 行)。这种方法的问题是我无法弄清楚如何将文本(@ 符号和团队名称)与团队徽标一起显示。显然我不能使用显示内联块,因为我已经绝对定位了徽标。所以,我的问题是:如何将团队徽标的大小调整为行的高度,同时还显示与文本内联的徽标(居中)?
解决方案
放弃 abspos 方法。
对于所有 img 徽标,删除width='15%'
属性。
添加一个vh
随窗口高度变化的 height 属性,例如
<tr>
...
<img src="pirates.svg" style="padding:4; height: 10vh;"> Pirates</td>
...
</tr>
<tr>
...
<img src="reds.svg" style="padding:4; height: 10vh;"> Pirates</td>
...
</tr>
推荐阅读
- filenet-p8 - 无法在 IBM Content Navigator 与 Content Platform 之间建立连接
- processing - 期待EOF,找到'for',正在处理
- php - 安排执行一次的 PHP 脚本
- asp.net-mvc - ASP MVC 项目中的 Angular:模板未显示
- azure - 将配置值注入 Helm Chart
- jasmine - 如何在量角器 e2e 测试中创建警报对话框?
- sql - 如何使用自动完成 WHEN 子句进行 SUM
- python - PyGame 学习环境和 NEAT-Python
- node.js - 如何处理 Node.js 中的异步错误
- angular - 如何将附加行附加到现有的 Observable