如何创建一个响应自身纵横比的 Logo

Avatar of Chris Coyier
Chris Coyier

DigitalOcean 为您的旅程各个阶段提供云产品。立即开始使用 200 美元的免费信用额度!

<svg> 的一个很酷的特性是,它实际上是它自己的文档,因此 SVG 内部的 CSS 中的 @media 查询是基于它的视窗,而不是可能包含它的 HTML 文档。

多年来,这一独特功能让大家可以尽情发挥。Tim Kadlec 尝试过 SVG 格式以及哪些格式最可靠地支持媒体查询。Sara Soueidan 尝试过 更多。Jake Archibald 在里面嵌入了一个画布 并以此方式测试了跨浏览器兼容性。Estelle Weyl 利用这种能力 在响应式图像出现之前就制作了响应式图像.

另一个真正让大家兴奋的事是,使用这种本地媒体查询功能来制作响应式 Logo。最有名的例子是 Joe Harrison 的网站,但是 Tyler StickaJeremy FrankChris Austin 也都尝试过。

Nils Binder 最近也发表了 相关内容。Nils 的方法特别巧妙,它利用 <symbol> 来引用其他 <symbol> 以提高效率,并使用 min-aspect-ratio 媒体查询,而不是 魔法数字 宽度。

记录在案的是,我们仍然非常需要针对 HTML 元素的容器查询。我知道这很难,但是实现难度和实用性是两码事。我更喜欢 有趣的现代解决方案,而不是试图被 说服放弃

直接链接 →