我正在尝试垂直对齐,考虑到像素完美,两个文本.
一个完全资本化,另一个不完全资本化.
http://codepen.io/FezVrasta/pen/EjxJoz
div { outline: 1px solid red; height: 31px; width: 400px; float: left; line-height: 31px; } span { display: inline-block; vertical-align: middle; }
如您所见,大写文本完全居中(20px以上,20px以下).
另一个,高出26px,低于19px.
我认为它始终以文本为中心,假设可能性较高的字符为中心…但我想仅考虑使用的字符来居中当前文本.
有办法吗?
注意:使用CSS表不能解决问题.
解决方法
每个浏览器仅为字体设置一个基线.它不关心你是否使用大写字母.因此,自然不是每个字母都可以完全居中,因为它们具有不同的高度和下降.
垂直对齐更“接近” – 值.当你设置vertical-align:top;并非所有字母都会对齐顶部并凸起顶部边框,只是字体的基线.