【问题标题】:cssnano removes "all" attribute from css @media querycssnano 从 css @media 查询中删除“all”属性
【发布时间】:2018-01-01 03:15:03
【问题描述】:

我很好奇 cssnano 对媒体查询的处理是否可行。在我的css文件中,我有。

@media all and ( min-width: 600px) {}

通过cssnano运行我的css后,它变成了这个>

@media ( min-width: 600px) {}

这在生产中使用安全吗?我似乎找不到任何地方说没有“all”属性会使浏览器默认为 all,或者如果没有它对于将文件发送到生产环境是一件坏事?

【问题讨论】:

    标签: css media-queries cssnano


    【解决方案1】:

    我是作者;是的,它是有效的。我会向您介绍原始问题,但简而言之:

    根据spec(示例5):

    即这些是相同的:

    @media all and (min-width:500px) { … }
    @media (min-width:500px) { … }
    

    这些是:

    @media (orientation: portrait) { … }
    @media all and (orientation: portrait) { … }
    

    在我看来,那些可以被剥离...[snip]

    https://github.com/ben-eb/cssnano/issues/215

    【讨论】:

    • 谢谢@ben 感谢您提供的信息。快速提问。如果我正确阅读了所有信息,则通过不在样式表中使用 only 或 all 可以使文件媒体查询更好地与旧浏览器兼容,因为它们无法处理“仅”或“全部”部分并且不会准备好询问。我理解对了吗?
    • 我记得是这样,但我不知道我的记忆是否对我有帮助;早在 2001 年深入研究规范确实确实将“仅”列为媒体查询语法的一部分 - w3.org/TR/2001/WD-css3-mediaqueries-20010404/#media0 - 但我没有支持它的来源。一般来说,媒体查询的最佳来源是caniuse.com/#feat=css-mediaqueries;这些天我不会太担心旧的浏览器支持,对于 IE,如果你需要它,那么条件 cmets 仍然可以正常工作。
    • 刚刚看到这个 wrt 规范:“媒体查询中允许使用关键字“only”和“not”,以避免传统用户代理在设备不满足其他条件的情况下应用样式表媒体查询。这将起作用,因为“only”和“not”不是 HTML4 中的媒体类型。 - 所以是的,确实是这样。 :-)
    猜你喜欢
    • 1970-01-01
    • 2017-12-28
    • 2015-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-04
    • 1970-01-01
    相关资源
    最近更新 更多