【问题标题】:em-based min-width media query overriding previous styles regardless of screen size无论屏幕大小如何,基于 em 的最小宽度媒体查询都会覆盖以前的样式
【发布时间】:2016-06-26 19:55:12
【问题描述】:

我正在使用zurb foundation for sites 构建一个网站,并且遇到了这个问题:当我想为平板电脑布局覆盖一些样式时,我也在覆盖移动设备的样式。我不知道我做错了什么。

我的CSS:

.footer {
    background-color: #FF7338;
    }
}

/*
LANDSCAPE PHONE
*/
@media only screen and (min-width: 40em) and (orientation: landscape) {
    .footer {

    }
}

/*
TABLET
*/
@media only screen and (min-width: 40.063em) and (max-width: 64em) { 
    .footer {
        background-color: pink;
    }
}

如果我用 chrome 检查网站,每部手机(从 320 像素开始)和平板电脑(从 768 像素开始)的页脚都是粉红色的。

感谢您的帮助。

【问题讨论】:

  • 由于当今大多数手机的像素数量要高得多,这可能就是原因。你检查过你测试的手机有什么吗?

标签: css sass


【解决方案1】:

我构建媒体查询的方式是:

没有针对小屏幕的媒体查询,因为我首先构建网站移动设备,所以这是默认样式。

然后,我在样式表中使用的媒体查询是:

/* MEDIA QUERIES */  
/* for 768px screens or more */
@media only screen and (min-width: 768px) {
...
}

/* for 1024px screens or more */
@media only screen and (min-width: 1024px) {
...
}

所以我可以为平板电脑和台式机设置样式。我使用像素进行媒体查询设置,但可以使用 em 代替。

总之,您需要改变进行媒体查询的方式。此刻,你们两个太相似了。

【讨论】:

  • 问题是这些 mixin 是在基础中预定义的 - 所以如果我使用它们的类进行布局(小、中、大等),是否也使用它们的屏幕尺寸定义有意义?问题是这些类可以正常工作,而这些样式却不能
猜你喜欢
  • 2018-05-26
  • 1970-01-01
  • 2023-01-26
  • 2015-05-01
  • 1970-01-01
  • 2012-03-19
  • 1970-01-01
  • 2013-04-22
  • 2016-04-28
相关资源
最近更新 更多