为什么`not(some-width:Xem)`媒体查询从不开火?

时间:2014-06-27 15:51:10

标签: css media-queries negation

我正在尝试否定max-device-width媒体查询(原因是我不会同时(max-device-width: X)(min-device-width: X)触发,如果设备具有正确的宽度)。不幸的是,not (min-or-max-some-width: X)媒体查询从未触发过。

这是a small fiddle。我希望桌面上有两条黄线,手机上有两条红线。我得到的只是桌面上的一条黄线(最后一条),手机上只有一条红线(第一条)。

我做错了什么?

1 个答案:

答案 0 :(得分:4)

首次引入媒体查询时,它要求not关键字后跟媒体类型,以使媒体查询有效。这看起来很奇怪,但是that's just how the grammar was defined(参见media_query制作)。

现在已在Media Queries level 4中修复此问题(请参阅<media_not>生产),因此您所拥有的内容应该在符合MQ4的浏览器中按预期工作。但是,已经开始提供4级媒体功能的浏览器都没有实现新的语法。

与此同时,您需要添加媒体类型。如果媒体类型不重要,请使用all

not all and (max-device-width: X)

Updated fiddle