我在垂直居中字体Helvetica Neue时遇到了问题。我已经使用了三种不同的流行方法(line-height等于容器,表格单元格,填充),这似乎适用于许多其他字体,但Helvetica Neue似乎比其他字体更高。我已经放在这里的例子:垂直中心Helvetica Neue
有其他面临同样的问题?或者有人能指出我做错了什么?
我在垂直居中字体Helvetica Neue时遇到了问题。我已经使用了三种不同的流行方法(line-height等于容器,表格单元格,填充),这似乎适用于许多其他字体,但Helvetica Neue似乎比其他字体更高。我已经放在这里的例子:垂直中心Helvetica Neue
有其他面临同样的问题?或者有人能指出我做错了什么?
我想你想让字体根据x高度(字符x的高度)而不是字体的整个高度垂直居中。根据字体以及字体大小与其容器的接近程度,这种差异变得明显。请参阅Vertical alignment based on x-height以了解如何以最佳方式实现此目标的问题。
我的首选方法是使用一个:after
伪选择器来添加一个与其父项一样高的空容器,并使用vertical-align: middle
根据x高度对它进行垂直居中。
.xheight {
font-size: 40px;
text-align: center;
}
.xheight:after {
content: '';
line-height: 50px;
vertical-align: middle;
}
感谢您的回答。我想我想要字体垂直居中基于“T”高度,如默认和Helvetica。我尝试了你的解决方案,它似乎与其他方法类似,也许更好一点。为了获得更多的控制权,我一直在琢磨Android,看起来字体的实际上升量大于字体报告的上升量。 – 2014-10-19 10:32:36
选择线条,你会看到问题。字体没有做好。 – kay 2014-10-19 06:46:34