CSS实现图片垂直居中方法

html

html 复制代码
    <div class="footer border-top-row">
      <div class="footer-row">
        <span class="footer-row-col01"
          >制单人:{{ printData[pageIndex - 1].rkMaster.makerName
          }}<img :src="getPersonSignImgSrc(printData[pageIndex - 1].rkMaster.makerName!)" alt="" style="height: 28px"
        /></span>
        <span class="footer-row-col02"
          >审核人:{{ printData[pageIndex - 1].rkMaster.makerName
          }}<img :src="getPersonSignImgSrc(printData[pageIndex - 1].rkMaster.makerName!)" alt="" style="height: 28px"
        /></span>
      </div>
      <div class="footer-row pageNum">
        <span>第 {{ printData[pageIndex - 1].pageIndex }} 页 / 共 {{ printData[pageIndex - 1].pageCount }} 页</span>
      </div>
    </div>

可以通过以下CSS设置实现图片垂直居中:

css

复制

下载

复制代码
.footer-row-col01,
.footer-row-col02 {
  display: inline-flex;  /* 启用flex布局 */
  align-items: center;   /* 垂直居中 */
  vertical-align: middle; /* 双重保障 */
}

.footer-row-col01 img,
.footer-row-col02 img {
  vertical-align: middle; /* 图片自身垂直对齐 */
  margin-left: 4px;       /* 可选:添加与文字的间距 */
}

代码解释:

  1. 父容器设置(关键)

    • display: inline-flex:将span转换为行内flex容器,保持行内特性同时可以使用flex布局

    • align-items: center:通过flex布局实现垂直居中

    • vertical-align: middle:作为备用方案,防止flex布局未生效时的保障

  2. 图片设置

    • vertical-align: middle:修正行内元素的默认基线对齐问题

    • margin-left:可选,用于增加图片与前面文字的间距

补充说明:

  • 如果遇到间距问题,可以尝试在父容器添加 gap: 4px 属性

  • 确保父级元素有足够的高度,垂直居中效果才能明显

  • 如果使用Sass/Less等预处理器,建议将这些样式封装到对应的class中

最终效果:图片将与同行的文字在垂直方向上完美对齐,无论字号如何变化都能保持居中状态。

css

html 复制代码
<style scoped lang="scss">

.footer {
  // 子绝
  position: absolute;
  bottom: 0;
  &-row {
    display: flex;
    height: 30px;
    line-height: 30px;
    &-col01 {
      width: 480px;
    }
    &-col02 {
      width: 238px;
    }
    &-col01,
    &-col02 {
      display: flex; /* 启用flex布局 */
      align-items: center; /* 垂直居中 */
      vertical-align: middle; /* 双重保障 */
      gap: 10px; /* 横向间距 */
    }
  }

</style>

效果

相关推荐
程序员黑豆2 小时前
Java类型推断完全指南:从var到菱形运算符,掌握使用限制与最佳实践
java·前端·ai编程
To_OC3 小时前
踩了个 TS 的坑之后,我终于把 type 和 interface 掰明白了
前端·react.js·typescript
GreenTea3 小时前
深度解读 Anthropic 多智能体报告:更强的模型 ≠ 更好的协调
前端·后端·算法
浮生望3 小时前
前端API工程化:用 Mock 数据与 Axios 配置实现独立于后端的并行开发
前端
万少3 小时前
给 DeepSeek Harness 装个"应用商店":一条命令,595 个插件随你逛
前端·javascript·后端
波波0074 小时前
C# 15 重磅新特性: 带标签 break 与 continue:重新定义嵌套循环控制流
服务器·前端·c#
Brown.alexis5 小时前
es6知识点1-自备使用
前端·ecmascript·es6
小爬的老粉丝5 小时前
JavaScript 纯前端预览 WPS:先识别容器,再路由解析器
前端·javascript·wps
计算机魔术师6 小时前
新兴多智能体系统的模式与问题
前端
用户059540174467 小时前
AI Agent 上下文污染踩坑实录:用 pytest + Redis 揪出 3 类记忆串号 bug,排查 6 小时
前端·css