如何解决安卓上按钮文字偏上的问题

比如一个普通的按钮,要做到文字垂直居中

<a>按钮</a>

css设置为:

a {
    height: 30px;
    line-height: 30px;
    font-size: 14px;
    text-align: center;
    width: 70px;
    vertical-align: middle;
}

在chrome上和ios上没有问题,但是在安卓上文字就会明显偏上,如图

clipboard.png

试过用table-cell或者line-height设为1,然后用padding来控制高度等方法,都不行,都是偏上的,这个问题怎么解决啊?

阅读 15.6k
8 个回答

这么巧前段时间我也碰到了一样的问题,

解决方法:使用 flex 布局。

把父元素设为:

display: flex;
align-items: center;
justify-content: center;

使用 autoprefixer 加上前缀以后没有任何兼容性问题。

a元素是行内元素,得设置为块级元素,设置的height line-height才起作用

新手上路,请多包涵

字体小于12px 就会偏上

使用flex布局,然后设置 line-height:normal; 就可以居中了。

f12调一下,把安卓的一些默认样式覆盖掉

这个,反正我是设置line-height和height一样,就会上下居中。不过,看你这个a好像也可以用button代替,button里面的文字自动上下左右居中

这是在特殊的浏览器才会出现这个问题吧,是line-height导致的,就用flex布局来替代

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题