我有一些内联链接,并且图标显示在左侧(填充+免费),但是当字体太小时,图像不适合行高,并在顶部和底部被裁剪。有没有办法防止这种情况的发生,而无需使用JavaScript?我不想在px中设置字体大小。]
将某些最小线高设置为非相对值(图像的高度)将是理想的。
当处理块元素内的内联元素时,您没有太多选择来更改其边界框的大小。 min-height
不适用于嵌入式元素,并且line-height
无效。
设置适当的padding
可能是一个合理的选择,但是您可能会遇到元素背景与包含块中其他元素重叠的问题。
作为快速演示,请尝试以下方法:
<!DOCTYPE html>
<html>
<head>
<title>Demo</title>
<style type="text/css">
span {
background: #0F0;
padding: 0.5em 0;
}
</style>
</head>
<body>
<p>This is some demo text. Look at how <span>texty</span> it is.</p>
</body>
</html>
您会看到texty
跨度的背景垂直扩展,但是它将在前一行和后一行上重叠文本。您可以在现代浏览器中将元素的display
属性设置为inline-block
来避免此问题,但是行间距不一致,如果在文本块中,这几乎肯定会分散注意力。
我认为,不管您喜欢与否,最好的选择就是确保要应用于链接的图像适合要显示的文本。
您可能可以使用display:inline-block
允许最小高度,因为内联标签受到一些限制