解决方案描述暂未找到完美解决方案。操作步骤①设置HTML标签:②设置密码框CSS样式:font-family:monospace;关于①点的解释,请参考下面参考文献1中的第一个答案;关于Point②,在android端设置“”会导致password密码符号变小,同时字符间距也会变大。参考下图:1、设置2、未设置3、设置,同时设置font-family:monospace;可以看到设置了和font-family:monospace;之后,密码的字符间距变小了很多,但是不能和之前一样了。是一个折中的方案,同时也把对其他业务模块的影响降到最低。别人在网上查阅了一些其他的解决方案并亲自测试,结果如下:解决方案一设置固定字号,即不使用rem、vh/vw等自适应解决方案,直接设置line-高度=高度(=20px)。优点是对于某个分辨率的设备来说是比较完美的解决方案,但是缺点也很明显。需要使用媒体查询等方式针对不同分辨率的设备进行手动适配,编写CSS的工作量会大大增加。解决方案2使用CSS3scale属性设置可以将CSS中的width、height、line-height等值的属性设置为原来的两倍大小,然后scale(0.5)缩小到一样大小作为原始元素。之所以没有使用这个方法是因为它并不是对所有安卓机型都有效,而且这个方法在我使用的p20pro测试机上也不起作用。解决方案3使用flex布局,无论是在原有元素上设置flex,还是在外部添加父元素并设置flex属性,这种方法都行不通。其他方案也或多或少存在问题,大家可以根据自己的需要选择方案。参考资料:1.为什么Android浏览器的line-height会偏离垂直居中?2.解决line-height=height元素高度但文字不垂直居中的问题3.解决移动端字体垂直居中的问题