PurgeCSS和Markdown输出,如何将元素选择器列为白名单?
刚开始使用的时候,我很快就遇到了从样式表中删除大量多余css的需要。PurgeCSS除了通常是一个很好的工具外,还可以成为一个猫捉老鼠的游戏,用于寻找想要的和不想要的选择器,特别是在部署了摇摇欲坠的小型生产代码之后 为了防止PurgeCSS被整理,它有一些可能性:在样式表中直接使用白名单、白名单模式、白名单模式或/*PurgeCSS开始和停止忽略*/ 通常我会通过注释保护选项中的一些选择器regexp和一些完整导入的样式表,请参见下面的示例。但特别是动态创建的选择器,如转换为HTML的标记。所有的,,所以:有没有办法或regexp将所有非类的选择器列为白名单 我尝试了一些用于whitelistPatterns的regexp,比如^?!\…+,^?!\\w+,…,但它们要么不起作用,要么将所有选择器(包括类)列入白名单 谢谢你的帮助 //postss.config.js const白名单=/^ p | ul | ol | h\d+| pre | code | carousel | flickity | spinner/ 常量purgecss=require@fullhuman/邮政清洗{ // … 白名单模式:[白名单], 白名单模式希尔德伦:[白名单] }; //styles.css /*! purgecss开始忽略*/ @导入admin.css; /*! purgecss结束忽略*/PurgeCSS和Markdown输出,如何将元素选择器列为白名单?,css,compilation,postcss,purge,Css,Compilation,Postcss,Purge,刚开始使用的时候,我很快就遇到了从样式表中删除大量多余css的需要。PurgeCSS除了通常是一个很好的工具外,还可以成为一个猫捉老鼠的游戏,用于寻找想要的和不想要的选择器,特别是在部署了摇摇欲坠的小型生产代码之后 为了防止PurgeCSS被整理,它有一些可能性:在样式表中直接使用白名单、白名单模式、白名单模式或/*PurgeCSS开始和停止忽略*/ 通常我会通过注释保护选项中的一些选择器regexp和一些完整导入的样式表,请参见下面的示例。但特别是动态创建的选择器,如转换为HTML的标记。所有
正如前面提到的,默认情况下,Tailwind运行一个相当宽容的清除。保留默认值对我来说是可行的,但是如果我配置了“全部清除模式”,我会完全丢失您描述的样式-因为元素不会出现在我的标记文件中 要解决这个问题,您可以从Tailwind配置文件向PurgeCSS传递一个白名单元素列表 首先,确保您正在使用可选配置文件: npx tailwindcss init 然后,您可以按如下方式对其进行配置。在这里,我使用更激进的清除,但也白名单的具体元素。下面是一个解析布局的示例:
谢谢从版本>=1.4.0开始,Tailwindcss包括PurgeCSS的实现,如中所述。我认为您关于在tailwind.config.js中使用purge.options.whitelist数组的解释与我在问题中描述的手动purgeCSS设置没有太大区别。我的问题是如何根据元素名将所有CSS选择器列为白名单。
module.exports = {
// Purge is executed only when NODE_ENV=production
purge: {
mode: 'all',
content: [
'site/_includes/**/*.njk'
],
options: {
whitelist: [
'body',
'html',
'a',
'h1',
'h2',
'h3',
'h4',
'p'
]
}
},
theme: {
extend: {},
},
variants: {},
plugins: [],
}