我很难理解字体缩放。
我目前有一个网站,其主体 font-size
为 100%。 100% 是什么?这似乎计算为 16 像素。
我的印象是 100% 会以某种方式指代浏览器窗口的大小,但显然不是因为无论窗口被调整到移动宽度还是完整的宽屏桌面,它总是 16 像素。
如何使网站上的文本相对于其容器进行缩放?我尝试使用 em
,但这也无法扩展。
我的理由是,当你调整大小时,我的菜单之类的东西会被压扁,所以我需要减少 px
font-size
的 .menuItem
以及与宽度相关的其他元素的容器。 (例如,在大型桌面的菜单中, 22px
完美运行。向下移动到平板电脑宽度和 16px
更合适。)
我知道我可以添加断点,但我真的希望文本可以缩放 以及 有额外的断点,否则,我最终会在宽度每减少 100 像素时产生数百个断点来控制文本。
原文由 Francesca 发布,翻译遵循 CC BY-SA 4.0 许可协议
如果容器不是主体,CSS Tricks 涵盖了将 文本放入容器 中的所有选项。
如果容器是主体,您正在寻找的是 Viewport-percentage lengths :
这些值为:
vw
(视口宽度的百分比)vh
(视口高度的百分比)vi
(根元素内联轴方向的视口大小的1%)vb
(根元素块轴方向的视口大小的1%)vmin
(较小的vw
或vh
)vmax
(较大或vw
或vh
)1 v* 等于初始包含块的 1%。
使用它看起来像这样:
如您所见,当视口宽度增加时,
font-size
也会增加,而无需使用媒体查询。这些值是一个大小单位,就像
px
或em
一样,因此它们也可以用于调整其他元素的大小,例如宽度、边距或填充。浏览器支持非常好,但您可能需要一个备用方案,例如:
查看支持统计信息: http ://caniuse.com/#feat=viewport-units。
此外,查看 CSS-Tricks 以获得更广泛的外观: 视口大小的排版
这是一篇关于设置最小/最大尺寸和对尺寸进行更多控制的好文章: 精确控制响应式排版
这是一篇关于使用 calc() 设置大小以便文本填充视口的文章:http: //codepen.io/CrocoDillon/pen/fBJxu
另外,请查看这篇文章,该文章也使用了一种称为“熔融引导”的技术来调整行高。 CSS 中的领先地位