【问题标题】:Strange media query behavior奇怪的媒体查询行为
【发布时间】:2013-10-26 14:08:38
【问题描述】:

我遇到了一些我一生都无法弄清楚的奇怪行为。

我有一个带有许多媒体查询(准确地说是 7 个)的流畅网格设计。 我并没有假装我正在做的是最佳实践,所以我做了 7 个查询。

为简洁起见,我将仅粘贴三个查询,一个是问题所在,一个是之前的一个,一个是紧随其后的。

前一个

@media only screen and (min-width: 1170px) and (max-width: 1189px) {
    body {
        color: PaleTurquoise;
    }    
}

麻烦的人

@media only screen and (min-width: 1190px) and (max-width: 1409px) {
    body {
        color: lime;
    }
}

紧随其后的那个

@media only screen and (min-width: 1410px) {
    body {
        max-width: 2000;
        color: red;
    }
}

那么发生了什么?好吧,两个媒体查询(之前,之后)将起作用并将字体颜色更改为PaleTurquoise 和red。造成麻烦的是没有将其font-color 更改为lime。

这里奇怪的是,如果我将任何其他 css 添加到麻烦的媒体查询中,该特定 css 将起作用。

为什么会这样?

我已将整个 css 粘贴在这里:DPASTE - styles.css

我在此处粘贴了整个 HTML:DPASTE - index.html

我也在使用Erik Meyers reset stylesheet

【问题讨论】:

  • 没关系,但您的代码中媒体类型all 和only screen 的使用不一致是否有原因?
  • 您的代表和问答历史表明您熟悉 SO 的工作原理,但您没有提供演示?

标签: html css media-queries


【解决方案1】:

对于第二个媒体查询,您要将 font-color 设置为石灰吗?

当前您正在设置背景-颜色。

试试这个:

@media only screen and (min-width: 1190px) and (max-width: 1409px) {
    body {
        color: lime;
    }
}

【讨论】:

  • 经过测试,这只是一个错字,对此感到抱歉。我已经修改过了。你运行我粘贴的代码了吗?
  • 基本上任何应用于body的css都会被忽略。
  • 我下载了所有三个 sn-ps 并将它们合并。我会得到所有石灰色的文字。这意味着它正在工作。
  • 你所说的“全是石灰色”是什么意思。即使调整浏览器窗口的大小?
  • 当我的屏幕尺寸在 1190 到 1409 像素之间时。我总是得到正确的颜色
猜你喜欢
  • 1970-01-01
  • 2015-04-13
  • 1970-01-01
  • 2018-11-23
  • 1970-01-01
  • 1970-01-01
  • 2015-09-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多