解决安卓浏览器文本无法垂直居中的问题
2020-05-09 00:59:52
1019 次阅读
0 个评论
安卓 webview 的字体大小在小于 12 像素的时候无法使用行高来垂直居中
内边距+行高设为 normal
行高+字体大小设为 initial
其实关键点在于 line-height: normal。 外层用 flex 还是 padding,或者其他的都可以!一般垂直居中还要考虑当前高度是否双倍单位,比如文字12px, 内容高度25px时是无法垂直居中,内容高度设置24或者26才可以。
ps:目前在微信等应用都存在该问题,而在最新的移动端 Chrome 浏览器上无该问题(截止本文编写时间,微信客户端的 chrome 版本为 57,chrome 版本为 70)。
在不同的安卓客户端上测试上述方法发现以下三个方法或许可以帮助解决居中问题,我们可以根据实际客户端的支持情况来选择其中一种方式来解决无法居中问题。
transform 缩放
<div class="solution" style="height: 32px; line-height: 32px; font-size: 20px; transform: scale(0.5, 0.5); transform-origin: left top;">
<span>hot 热门</span>
</div>
内边距+行高设为 normal
<div class="solution" style="box-sizing: border-box; padding: 2px; line-height: normal; font-size: 10px;">
<span>hot 热门</span>
</div>
行高+字体大小设为 initial
<div class="solution" style="line-height: 16px; font-size: initial;">
<span style="font-size: 10px;">hot 热门</span>
</div>
flex 布局
<div class="solution" style="line-height: normal;display: inline-flex; align-items: center; height: 16px; line-height: 1; font-size: 10px;">
<span>hot 热门</span>
</div>
其实关键点在于 line-height: normal。 外层用 flex 还是 padding,或者其他的都可以!一般垂直居中还要考虑当前高度是否双倍单位,比如文字12px, 内容高度25px时是无法垂直居中,内容高度设置24或者26才可以。
00
- 0回答
- 1粉丝
- 0关注
相关话题
- 解决IE浏览器不支持Spring MVC 文件下载的问题
- hack来区分不同的IE浏览器
- 禁止用户打开浏览器控制台
- 最新禁止用户打开浏览器控制台
- CSS—flex布局水平垂直居中
- 解决spring mvc 返回json对象时ie浏览器访问会出现下载文件弹出框
- element UI中el-row垂直居中
- IE7/IE8浏览器纯CSS实现圆角效果
- 解决kindeditor中onkeydown不执行的问题
- SImpleImage解决图片压缩变红问题
- Mybatis解决oracle in语句 1000个数限制的问题
- img标签的水平居中、靠左、靠右
- 解决一个意外错误使您无法删除该文件
- CentOS 8.x系统停止维护yum无法使用解决方法
- 解决root用户和普通用户的时区不一致的问题