如何快速从整个文件中删除所有供应商前缀?

10
我得到了一个CSS文件,其中有很多供应商前缀(-webkit、-moz等)。这些前缀使得文件变得更大。
我不能逐个移除每个前缀,因为这可能需要很长时间。有没有什么工具或技巧可以一键移除整个文件中的供应商前缀呢?

1
在你的文本编辑器中查找和替换?但我们谈论的增量有多大呢?这可能不会产生任何或很小的差异。 - Chris Burton
2
在删除之前,你应该知道它为什么存在 :) [浏览器兼容性] - swapnesh
我确信知道它为什么存在。使用prefixfree.js将使CSS更易于维护。顺便说一下,我的网站访问者中有一部分仍在使用4 Mbps的速度网络。 - Jackwin tung
@Jackwintung:如果有人在浏览器中禁用了 js,那怎么办……只是一个想法!!?? - NoobEditor
1
@NoobEditor 是的,你说得对。我想最好还是保留供应商前缀。 - Jackwin tung
4个回答

8
一个非常好的功能是,Autoprefixer 还能够从您的 CSS 中删除不必要的前缀。您可以在这里在线尝试它:http://autoprefixer.github.io/
如果要删除所有前缀,请将底部的 "Filter" 文本框留空。

8
要删除所有前缀,您可以将“筛选器”文本框留空。 - Kevinleary.net
它添加了前缀,但是如何清除这些前缀呢? - Norbert Kardos
@NorbertKardos - 除了添加所需的前缀,它还可以删除不必要的前缀。尝试答案中的链接:粘贴您的CSS,清除“Browserslist”文本框并点击“应用”。 - Sphinxxx

8

@Sphinxxx的最新版本回答,正如所述,只是“几乎”正确。为了去除所有供应商前缀,请将Autoprefixer过滤器设置为>100%


1

我遇到了同样的问题,我试图一次性从整个文件中删除所有浏览器厂商前缀。我发现了一个很棒的工具postcss-remove-prefixes。它可以在几秒钟内轻松完成我的工作。



您可以在这里找到此工具postcss-remove-prefix

我假设您已经在系统上安装了NodeJs和NPM

以下是使用此工具的过程
npm i -g postcss-remove-prefixes

然后在CMD中使用此工具
remove-prefixes input.css
这将从您的文件中删除厂商前缀

remove-prefixes input.css output.css
这将从您的文件中删除厂商前缀并生成新文件作为输出。

:)享受吧


-1

我在Github上托管的javascript函数可以实现你所需的功能。
例如,var t = DeVendorCSS("transform")在不支持"transform"但支持前缀的webkit浏览器中返回一个数组["webkit", "webkitTransform", "-webkit-transform"],用于内联CSS规则,如e.style[t[1]]="translateY(5px)"。在此示例中,实际值"translateY"必须跨厂商兼容(如果不兼容,则使用t [0]作为厂商ID)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接