You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在SCSS中组合多个@custom-media自定义媒体查询?

自定义媒体查询组合问题解答

你不能用and组合(--mobile)和(--desktop)来实现目标效果,这样写的话样式永远不会生效。

原因很简单:你的--mobile对应width < 535px,--desktop对应width >= 1025px,这两个宽度区间完全没有重叠,and逻辑要求两个条件同时满足,没有设备能同时处于这两个宽度范围,所以这个媒体查询永远不会触发。

如果要让样式在移动端或桌面端生效,正确的做法是用**逗号(,)**分隔两个自定义媒体查询——逗号在媒体查询里代表「或(OR)」的逻辑,只要满足其中一个条件就会应用样式。示例代码如下:

@media (--mobile), (--desktop) {
    // 仅在移动端和桌面端生效的样式
}

自定义媒体查询本质就是预定义的媒体条件片段,组合时完全遵循普通媒体查询的逻辑规则:and是「且」,要求所有条件同时成立;逗号是「或」,任一条件成立即可触发。

内容的提问来源于stack exchange,提问作者physicsboy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 20:25:09