我有一些 非常 基本的 HTML 和 CSS:
header {
vertical-align: middle;
height: 60px;
background-color: #00F;
}
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<link rel="stylesheet" media="all" href="stylesheet.css">
<title>Hello, World!</title>
</head>
<body>
<header>
Hello<sup>World</sup>
</header>
</body>
</html>
但是文本没有在中间对齐。为什么不?
原文由 ryyst 发布,翻译遵循 CC BY-SA 4.0 许可协议
vertical-align
属性仅适用于:请参阅 此链接。
您可以使用
line-height
使文本垂直居中,只需使其大于实际的font-size
,但仅当文本跨越单行时才有效。或者,您可以将
padding
按相等的值添加到header
元素的顶部和底部。根据评论编辑:如果使用 HTML5
header
元素,显而易见的解决方案是使其成为display: table-cell;
而不是我认为重置 CSS 应用的默认块。