css - 是否可以阻止稍微太大的内联图像(例如笑脸)影响其所在文本 block 的行高?

标签 css

所以问题是当您有一段文本和一张略微太高而您想与文本对齐的图像时。例如,笑脸。它会导致段落那一行的行高增长,使文本 block 看起来很难看。

我实际上已经想出了一个解决方案,但它很乱而且我不喜欢它...如果我将笑脸包裹在一个相对定位的 div 中,并给它一个绝对位置,我得到的效果是我在追求:

.holder{display:inline-block;position:relative;width:16px}
.holder img{position:absolute;top:-16px}

<span class="holder"><img src="/smiley.gif" height="16" width="16"></span>

但是它添加了额外的标记。有什么方法可以在不添加额外的 HTML 元素的情况下实现这一目标 - CSS 解决方案(没有 javascript!)

我想知道我是否遗漏了一些溢出/垂直对齐/ float /显示等应用程序?

非常感谢!

最佳答案

根据所需的图像位置以及是否有以像素为单位的固定行高,您可以在图像上设置等于行高的最大高度,并设置 vertical-align: bottom on图像,使其完全适合您的线条。

查看此 fiddle举个例子。

p {
    line-height: 18px;
}

p img {
    max-height: 18px;
    vertical-align: bottom;
}

<p>Some text <img src="/smiley.gif"> more text.</p>

关于css - 是否可以阻止稍微太大的内联图像(例如笑脸)影响其所在文本 block 的行高?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9219404/

相关文章:

javascript - ChartJS中条形图的边框半径

jquery - 导航栏卡在顶部,边距错误?

javascript - 将 div margin-top 设置为屏幕高度(在 iframe 内,跨浏览器)

html - 使用 html 和 css 中间带有文本的垂直线

css - 使用 CSS 自定义滚动条

html - 如何使表格中一行的最后一个单元格占据所有剩余宽度

jquery - 使用 CSS3 动画或 jQuery 将 div 向下滑动到可见区域

html - IE 在点击时显示图像映射剪切的形状

javascript - 如何使自动加载进度条重定向?

html - 如何停止 CSS/HTML 导航菜单以不同的分辨率换行?