【发布时间】:2015-11-26 11:54:46
【问题描述】:
我有 uncss(github 上的一个项目)来为响应式站点删除不需要的 css。 它还删除了 mobile.css 文件中提到的 css,但它实际上会影响移动视图中的站点。我不知道 uncss 是如何工作的? 即天气,它只是删除了 DOM 中不存在的选择器,或者它删除了仅在特定视口中未使用的选择器。
【问题讨论】:
标签: css github responsive-design uncss
我有 uncss(github 上的一个项目)来为响应式站点删除不需要的 css。 它还删除了 mobile.css 文件中提到的 css,但它实际上会影响移动视图中的站点。我不知道 uncss 是如何工作的? 即天气,它只是删除了 DOM 中不存在的选择器,或者它删除了仅在特定视口中未使用的选择器。
【问题讨论】:
标签: css github responsive-design uncss
媒体选项是救援:
options = {
...
media : ['(min-width: 700px) handheld and (orientation: landscape)'],
...
}
来自文档:
media (Array):默认情况下,UnCSS 只处理带有媒体查询“all”、“screen”和没有的样式表。在此处指定要包括哪些其他内容。
只需为 mobile.css 指定确切的 meida 选项并享受正确的 unCSS 工作。
【讨论】:
来自github:
怎么做?
UnCSS 去除未使用规则的过程如下:
document.querySelector 过滤掉在 HTML 文件中找不到的选择器。所以是的,它会在运行时删除不在 DOM 中的选择器。如果你动态添加了选择器,你可以通过在它们前面注释:/* uncss:ignore */ 来让 uncss 忽略它们,例如
/* uncss:ignore */
.selector1 {
/* this rule will be ignored */
}
【讨论】: