目标是为 Tailwindcss v3 配置支持 @import 和删除未使用的自定义 CSS 类的开发环境。
我没有使用捆绑器。该项目仅依赖于 HTML、CSS 和 JS,即没有框架。如果它很重要,我会使用 VS Code。
这是我尝试过的。
项目配置:
// tailwind.config.js
const defaultTheme = require('tailwindcss/defaultTheme');
module.exports = {
content: [
'./src/**/*.{html,js}',
],
darkMode: 'media',
theme: {
extend: {
fontFamily: {
primary: '"Inter", sans-serif',
mono: ['"DM Mono"', ...defaultTheme.fontFamily.mono]
}
},
},
variants: {
extend: {}
},
plugins: [
// ...
]
};
// postcss.config.js
module.exports = {
plugins: [
require('postcss-import'),
require('tailwindcss'),
require('autoprefixer'),
require('cssnano')
]
/* styles.css*/
@import "tailwindcss/base";
@import "./custom-base-styles.css";
@import "tailwindcss/components";
@import "./custom-components.css";
@import "tailwindcss/utilities";
@import "./custom-utilities.css";
这是我的推荐台词:
$ npx tailwindcss -i ./src/css/styles.css -o ./css/styles.css --watch
仅运行上述命令,安装程序不会内联 custom*.css 文件。
为了实现内联,我还得在下面执行,表面上看起来好像没有必要。
$ npx postcss-cli './src/css/styles.css' -o './css/styles.css' -w
最终结果是,Tailwindcss不会删除我未使用的自定义样式,即使包装在所需的 @layer {}中也是如此。
此处的第 5 步(使用 PostCSS)只是说开始构建过程,并没有提供任何细节。
此处的第 4 步(Tailwind CLI)仅表示启动 Tailwind CLI 进程。
那么,我错过了什么?
我需要使用捆绑器吗?如果是这样,我更喜欢的是 Rollup。
其他详情:
自动前缀:^10.4.0
cssnano:^5.0.10
postcss-cli:^9.0.2
postcss-import:^14.0.2 tailwindcss
:“^3.0.7