css媒体查询顺序问题

这是通过css-级联样式表的设计。

这意味着,如果应用两个与相同元素发生冲突的规则,它将选择最后一个声明的规则,除非第一个规则具有!important标记或更具体(例如:html > body相对于只是body,后者不那么具体)。

所以,考虑到这个CSS

@media (max-width: 600px) {
  body {
    background: red;
  }
}

@media (max-width: 400px) {
  body {
    background: blue;
  }
}

如果浏览器窗口宽为350像素,则背景将是蓝色的,而使用此css则是蓝色的。

@media (max-width: 400px) {
  body {
    background: blue;
  }
}

@media (max-width: 600px) {
  body {
    background: red;
  }
}

和相同的窗口宽度,背景将是红色的。这两条规则确实是匹配的,但第二条规则是应用的规则,因为这是最后一条规则。

最后,用

@media (max-width: 400px) {
  body {
    background: blue !important;
  }
}

@media (max-width: 600px) {
  body {
    background: red;
  }
}

@media (max-width: 400px) {
  html > body {
    background: blue;
  }
}

@media (max-width: 600px) {
  body {
    background: red;
  }
}

背景将是蓝色的(350像素宽的窗口)。

看加速得中二 学生 回答于24天前

或者,你只需将最小宽度添加到更大的媒体查询/IES中

@media (min-width: 400.1px) and (max-width: 600px) {
  body {
    background: red;
  }
}

@media (max-width: 400px) {
  body {
    background: blue;
  }
}

使用此代码,在任何顺序中,宽度为400.1px-600px的分辨率总是为红色,宽度为400 px或更小的分辨率总是为蓝色。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值