【发布时间】:2020-01-27 18:27:14
【问题描述】:
我正在关注 Adjust image size based on the font size 以根据文本大小更改图像大小,但与 macOS 和 Android(均使用 Chrome)的结果完全不同。
在桌面的 Chrome 上:
在 Android 的 Chrome 上:
您可以看到,与文字相比,Android 上的图像要小得多。如何解决,使图像可能比 Android 上的文本大 2.5?
看起来像是 GitHub 页面的问题?
https://s999inf.github.io/imagezoom/
https://github.com/s999inf/imagezoom/blob/master/index.html
<!DOCTYPE html>
<html>
<head>
<style>
body {
text-rendering: optimizeLegibility;
-webkit-font-smoothing: subpixel-antialiased;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.logos > img {
display: inline-block;
height: 100vh;
max-height: 5em;
}
.test-logos {
display: inline-block;
}
.test-logos__img-2em {
height: 2em;
}
.test-logos__img-3em {
height: 3em;
}
.test-logos__img-5em {
height: 5em;
}
</style>
</head>
<body>
copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text
copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text
copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text copy text
<div class="test-logos">
<img class="test-logos__img-2em" src="https://via.placeholder.com/16x16">
<img class="test-logos__img-3em" src="https://via.placeholder.com/16x16">
<img class="test-logos__img-5em" src="https://via.placeholder.com/16x16">
</div>
<div class="logos">
<img src="https://via.placeholder.com/16x16">
<img src="https://via.placeholder.com/16x16">
<img src="https://via.placeholder.com/16x16">
</div>
</body>
</html>
【问题讨论】:
-
如果先设置
body, .logos {font-size: 16px;}会发生什么? -
@MarkSchultheiss 我不明白。你能详细说明一下吗?您是否建议为
.logos添加默认字体大小? -
我在 Mac 和 Android 上的 Chrome 中对其进行了测试,效果很好。徽标没有像您的示例那样改变它的大小。
-
@FurkanPoyraz 这就是问题所在。如何根据文字大小改变图片大小?
-
@Rahn 这正是您使用 em 单元所做的。您的徽标应比基本字体大小(等于 1em)大 2.5 倍。 jsfiddle.net/Lavpzu01
标签: javascript html css google-chrome cross-platform