解决在微信小程序中view组件下的text和images设置了样式display: flex; align-items: center;对不齐

原始代码的问题

html 复制代码
<view style="display: flex; align-items: center;">
  <text style="line-height: 1;">全国</text>
  <image src="/images/xia.png" style="height: 20rpx; width: 20rpx; display: block;"></image>
</view>

问题1:<text>元素的默认行高影响对齐

  • <text>元素默认有行高(line-height),会导致文字实际占位高度大于字体大小
  • 即使设置了align-items: center,图片也会基于文字基线对齐,而不是视觉中心对齐

问题2:<image>元素的默认显示方式

  • <image>默认是内联(inline)元素,会受到文本基线对齐规则影响
  • 图片的垂直对齐方式默认为baseline,与文字基线对齐会导致微妙的偏移

修改后的代码

html 复制代码
<view style="display: flex; align-items: center;">
  <text style="line-height: 1;">全国</text>
  <image src="/images/xia.png" style="height: 20rpx; width: 20rpx; display: block;"></image>
</view>
  • line-height: 1将行高设置为与字体大小相同
  • 消除了文字上下多余的空白,使文字高度更精确
  • 让Flex的align-items: center能基于实际内容高度居中
  • 将图片从默认的inline改为block显示
  • 避免受到文本基线对齐的影响
  • 使图片完全遵循Flex容器的对齐规则
相关推荐
计算机学姐7 小时前
基于微信小程序的图书馆座位预约系统【uniapp+springboot+vue】
vue.js·spring boot·微信小程序·小程序·java-ee·uni-app·intellij-idea
焦糖玛奇朵婷11 小时前
健身房预约小程序开发、设计
java·大数据·服务器·前端·小程序
Dragon Wu13 小时前
Taro v4.2.0 scss使用“@/xxx“的配置方法
前端·小程序·taro·scss
WKK_13 小时前
uniapp 微信小程序使用TextEncoder,arrayBufferToBase64
微信小程序·小程序·uni-app
舟遥遥娓飘飘15 小时前
面向零基础初学者,从环境搭建到发布上线,手把手教你开发第一个微信小程序(第3章-认识项目结构)
微信小程序·小程序·notepad++
优睿远行16 小时前
微信小程序自定义组件开发实战:从封装到发布的全流程指南
微信小程序·小程序·notepad++
276695829216 小时前
某白山小程序限制PC端调试
python·小程序·apache·小程序逆向·某白山·限制pc调试
Greg_Zhong16 小时前
微信小程序中使用云函数调用豆包免费模型,部署云函数设置(触发器)执行每日自动生成书籍的文章赏析,完整过程
微信小程序·ai工程师·小程序中豆包模型调用·云函数配置触发器生成每日文章·微信云函数
eric*168817 小时前
微信小程序全局安全水印组件实践:支持动态更新、全局生效、自定义样式
微信小程序·小程序
Geek_Vison17 小时前
三款小程序容器技术选型对比分析——融媒新闻APP如何进行技术选型~
小程序·uni-app·app开发·finclip·小程序开发平台·跨端开发·小程序容器