用 vite 打包的 react 中使用 tailwindcss

141 阅读1分钟

传统CSS的问题

在如今项目越来越大的情况下,处理一个庞大且复杂的样式表是相当困难,这些样式就像是一张缠绕在一起的渔网。在嵌套的 CSS 中,微小的改变可能会引起巨大的变化,难以预料进行细微的修改和操作会引起什么?

原子类CSS

原子 CSS 提供了一套直接,明显且简单的方法论。原子类的类目是不可改变的,这使得使用的 css 效果是显著的,可以被依靠的,因为同样的类名,所展现出来的 CSS 的一致的。

.flex{
  display:flex;
}

如上就是一个原子类 flex。
相比于传统 CSS ,原子类的优点是可见的。

  • 写法更加简单,降低命名难度,更加规范
  • 我们在项目中基本不需要再自己手写 css 代码
  • 减少 css 嵌套的问题

当然原子类 css 也不是没有缺点。

  • 难以阅读和维护
  • 刚开始接触时的记忆苦难

在项目中使用原子类css

tailwindcss

官方文档:www.tailwindcss.cn/docs/instal… tailwindcss 是当下比较流行的原子css框架,可以帮助我们快速使用进行开发。

引入

在终端中输入如下命令:

npm install -D tailwindcss postcss autoprefixer
npx tailwindcss init

然后在 postcss.config.js 中添加如下代码:

// common.js
module.exports = { 
    plugins: { 
        tailwindcss: {}, 
        autoprefixer: {}, 
    } 
}
// es
export default {
  plugins: {
    tailwindcss: {},
    autoprefixer: {},
  },
};

tailwind.config.js 配置文件中添加如下配置

// common.js
module.exports = {
  content: ["./src/**/*.{html,js,,tsx,jsx}"],
  theme: {
    extend: {},
  },
  plugins: [],
}
// es
export default {
  content: ["./src/**/*.{html,js,tsx,jsx}"],
  theme: {
    extend: {},
  },
  plugins: [],
};

最后在公共的 css 中添加

export default {
  content: ["./src/**/*.{html,js,tsx,jsx}"],
  theme: {
    extend: {},
  },
  plugins: [],
};

最后即可在文件中使用,如 react 中:

export default function App() {
  return (
    <div className="flex flex-row h-2/5 bg-lime-400">
      <div>1</div>
      <div>2</div>
      <div>3</div>
    </div>
  );
}