【发布时间】:2018-07-03 20:13:26
【问题描述】:
对于小屏幕(移动),字体大小固定为14px。在真正的大屏幕上,字体大小固定为18px。所以它永远不会低于14px,也永远不会高于18px。媒体查询会处理这个问题。
然后我们有一个中间立场,我希望字体大小在14px 和18px 之间是动态的。为此,我使用font-size: calc(.5vw + .85em);,它工作正常,但不是很好。我不知道如何计算它从14px 开始并在屏幕宽度40rem (16 * 40) 和65rem 之间的18px 结束。
有什么想法吗?
.wrap {
font-size: 16px;
}
p {
font-size: calc(.5vw + .85em);
}
p:before {
content: 'Desktop: ';
opacity: .5;
}
@media screen and (min-width: 65rem) {
p {
font-size: 18px;
}
p:before {
content: 'Desktop large: ';
opacity: .5;
}
}
@media screen and (max-width: 40rem) {
p {
font-size: 14px;
}
p:before {
content: 'Mobile: ';
opacity: .5;
}
}
<div class="wrap">
<p>
text
</p>
</div>
我这里也加了:https://jsfiddle.net/6ybkp7a1/6/
示例
当我的屏幕宽度为40.1rem(刚好在40rem 上方)时,我的字体大小应该类似于14.1px(或其他任何类型),刚好在14px 上方。
【问题讨论】:
-
css-tricks.com/snippets/css/fluid-typography 对所涉及的数学有很好的解释。