TailwindCSS 初探

TailwindCSS 初探

一、背景

最近在做前端页面的时候,发现自己写 CSS 越来越懒,总是想有没有一种方式,直接在 HTML 里就能把样式搞定,不用来回切 CSS 文件。

于是就试了试 TailwindCSS ,一个原子化 CSS 框架,简单来说,就是帮你把常用的样式拆成一个个小类名,你只要在标签上堆这些类,就能快速完成页面布局和样式。

它的特点:

  • 不用写 CSS 文件(大部分情况)
  • 类名固定,不会冲突
  • 设计系统化,颜色、间距、字体都可以统一配置
  • 构建时自动清理没用的样式,最终产物很小

二、常用语法

Tailwind 的类名基本是 功能 + 值 的组合,比如 bg-blue-500 表示背景色是蓝色 500 号,p-4 表示 padding 为 1rem。

常用的可以分几类:

1. 布局类

css 复制代码
<div class="flex justify-center items-center">
  <p>居中内容</p>
</div>
  • flex:开启 Flex 布局
  • justify-center:水平居中
  • items-center:垂直居中

2. 间距类

css 复制代码
<div class="p-4 m-2">
  <p>有内外边距的盒子</p>
</div>
  • p-4:padding 全方向 1rem
  • m-2:margin 全方向 0.5rem

3. 颜色类

ini 复制代码
<button class="bg-blue-500 text-white">
  提交
</button>
  • bg-blue-500:背景色蓝色 500
  • text-white:文字颜色白色

4. 字体类

css 复制代码
<p class="text-lg font-bold">
  大号加粗文字
</p>
  • text-lg:字体大小大号
  • font-bold:加粗

5. 圆角与边框

css 复制代码
<img class="rounded-full border border-gray-300" src="avatar.png" />
  • rounded-full:圆形
  • border:有边框
  • border-gray-300:边框颜色灰色 300

6. 变量与复用:@apply

虽然 Tailwind 鼓励直接在 HTML 写类,但有时候我们想复用一组样式,可以用 @apply 在 CSS 中组合原子类:

less 复制代码
/* styles.css */
.btn-primary {
  @apply bg-blue-500 text-white px-4 py-2 rounded;
}

.btn-secondary {
  @apply bg-gray-500 text-white px-4 py-2 rounded;
}

然后在 HTML 中:

ini 复制代码
<button class="btn-primary">提交</button>
<button class="btn-secondary">取消</button>

这样就能在保留 Tailwind 优势的同时,让类名更简洁。


7. 配置变量(tailwind.config.js)

Tailwind 的颜色、间距等都可以在 tailwind.config.js 中统一配置,比如:

css 复制代码
module.exports = {
  theme: {
    extend: {
      colors: {
        brand: '#ff6600',
      },
    },
  },
};

然后就能用:

ini 复制代码
<div class="bg-brand text-white">品牌色背景</div>

三、结语

TailwindCSS 用起来很轻松,尤其是做原型、个人项目、小型后台的时候,几乎不用写额外的 CSS 文件,直接在 HTML/JSX 里堆类就能搞定布局和样式。

当然,大型项目最好配合组件封装、@apply、统一配置等方式来保持可维护性。

相关推荐
假装我不帅4 分钟前
jquery-validation使用
前端·javascript·jquery
怕浪猫9 分钟前
React从入门到出门第六章 事件代理机制与原生事件协同
前端·javascript·react.js
天府之绝13 分钟前
uniapp 中使用uview表单验证时,自定义扩展的表单,在改变时无法触发表单验证处理;
开发语言·前端·javascript·vue.js·uni-app
be or not to be14 分钟前
Html-CSS动画
前端·css·html
初恋叫萱萱19 分钟前
技术基石与职场进阶:构建从Web后端到高性能架构的完整知识图谱
前端·架构·知识图谱
木木木一23 分钟前
Rust学习记录--C9 错误处理
前端·学习·rust
局外人LZ25 分钟前
libsodium.js:web端与 Node.js 的现代加密工具集,构建前端安全加密体系
前端·javascript·node.js
xkxnq30 分钟前
第二阶段:Vue 组件化开发(第 20天)
前端·javascript·vue.js
「、皓子~33 分钟前
AI 创作系列(34)海狸IM桌面版 v1.1 正式发布:Vite + Electron 性能优化与体验升级
前端·人工智能·electron·开源·开源软件·im
鹏程十八少34 分钟前
1.Android 3分钟跑通腾讯 Shadow 插件化官方Demo:零反射、手把手实战(基于源码依赖)
android·前端·面试