由艾哈迈德(Ahmad)记录下来的CSS技巧,源自Facebook的代码库,并根据视口根据其宽度而动态调整了元素的边界-Radius。魔术发生在CSS的一行中:
。卡片 { Border -Radius:Max(0px,min(8px,calc((100vw -4px -100%) * 9999))); }
核心逻辑将100vw
(视口宽度)与100%
(元素宽度)进行比较。通常, border-radius
为8px。但是,当元素的宽度接近视口宽度(大约4px的公差)时,计算会导致负值。 max(0px, ...)
和min(8px, ...)
函数与大乘数(9999)结合使用,确保在0px和8px Border-radius之间进行清晰的切换,从而消除任何中间值。删除乘数(9999)表明,随着元素的宽度接近视口宽度,逐渐过渡。
这种方法具有@media
查询的优势:
容器感知:与依赖固定视口宽度的介质查询不同,该技术动态地响应了元素相对于视口的宽度,它是容器查询的一种形式。它不需要事先知道卡的尺寸。媒体查询将取决于该预定义的宽度。
多功能性:这种“ Fab Four”技术(有时称为)在电子邮件开发和其他对布局响应性精确控制至关重要的环境中特别有用。
与媒体查询相比,开发人员强调了其出色的适应性,使其成为响应式设计方案的强大工具。
以上是CSS中的条件边界半径的详细内容。更多信息请关注PHP中文网其他相关文章!