{"id":12377111,"date":"2026-03-19T04:08:16","date_gmt":"2026-03-18T20:08:16","guid":{"rendered":"https:\/\/www.likacloud.com\/knowledge\/tailwind-css-%e4%bf%9d%e5%a7%86%e7%ba%a7%e6%95%99%e7%a8%8b%ef%bc%9a%e4%bb%8e%e5%85%a5%e9%97%a8%e5%88%b0%e9%a1%b9%e7%9b%ae%e5%ae%9e%e6%88%98%e5%85%a8%e8%a7%a3%e6%9e%90\/"},"modified":"2026-03-19T04:23:03","modified_gmt":"2026-03-18T20:23:03","slug":"tailwind-css-tutorial-from-beginner-to-project","status":"publish","type":"knowledge_post","link":"https:\/\/www.likacloud.com\/vi\/knowledge\/website-building\/tailwind-css-tutorial-from-beginner-to-project\/","title":{"rendered":"H\u01b0\u1edbng d\u1eabn s\u1eed d\u1ee5ng Tailwind CSS d\u00e0nh cho ng\u01b0\u1eddi m\u1edbi b\u1eaft \u0111\u1ea7u: T\u1eeb c\u01a1 b\u1ea3n \u0111\u1ebfn th\u1ef1c h\u00e0nh tr\u00ean d\u1ef1 \u00e1n th\u1ef1c t\u1ebf"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">\u5728\u73b0\u4ee3 Web \u5f00\u53d1\u9886\u57df\uff0c\u5b9e\u7528\u4f18\u5148\u7684 CSS \u6846\u67b6\u6b63\u5f15\u9886\u7740\u9ad8\u6548\u5f00\u53d1\u7684\u6f6e\u6d41\u3002\u5176\u4e2d\uff0c<code>Tailwind CSS<\/code> \u4ee5\u5176\u72ec\u7279\u7684\u8bbe\u8ba1\u54f2\u5b66\u548c\u5f3a\u5927\u7684\u5de5\u5177\u94fe\uff0c\u6210\u4e3a\u4f17\u591a\u5f00\u53d1\u8005\u7684\u9996\u9009\u3002\u5b83\u901a\u8fc7\u63d0\u4f9b\u5927\u91cf\u53ef\u7ec4\u5408\u7684\u539f\u5b50\u7c7b\uff0c\u8ba9\u4f60\u53ef\u4ee5\u76f4\u63a5\u5728 HTML \u4e2d\u5feb\u901f\u6784\u5efa\u4efb\u4f55\u8bbe\u8ba1\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Tailwind CSS \u6838\u5fc3\u6982\u5ff5\u4e0e\u5b89\u88c5<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><code>Tailwind CSS<\/code> \u7684\u6838\u5fc3\u601d\u60f3\u662f\u201c\u5b9e\u7528\u4f18\u5148\u201d(Utility-First)\u3002\u5b83\u6ca1\u6709\u50cf\u4f20\u7edf\u6846\u67b6\u90a3\u6837\u63d0\u4f9b\u9884\u5236\u7684\u7ec4\u4ef6\uff08\u5982\u6309\u94ae\u3001\u5361\u7247\uff09\uff0c\u800c\u662f\u63d0\u4f9b\u4e86\u4e00\u6574\u5957\u7ec6\u7c92\u5ea6\u7684 CSS \u8f85\u52a9\u7c7b\u3002\u901a\u8fc7\u8fd9\u4e9b\u7c7b\u7684\u7ec4\u5408\uff0c\u4f60\u53ef\u4ee5\u50cf\u642d\u79ef\u6728\u4e00\u6837\u6784\u5efa\u51fa\u5b8c\u5168\u81ea\u5b9a\u4e49\u7684\u7528\u6237\u754c\u9762\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u4f8b\u5982\uff0c\u5728\u4f20\u7edf\u7684 CSS \u4e2d\uff0c\u4f60\u9700\u8981\u4e3a\u4e00\u4e2a\u6309\u94ae\u5355\u72ec\u7f16\u5199\u6837\u5f0f\uff0c\u800c\u5728 Tailwind \u4e2d\uff0c\u4f60\u53ef\u4ee5\u5728 HTML \u4e2d\u76f4\u63a5\u5e94\u7528\u7c7b\u540d\u3002<\/p>\n<!-- AUTO_INTERNAL_LINKS_START --><p>\u63a8\u8350\u9605\u8bfb <a href=\"https:\/\/www.likacloud.com\/de\/knowledge\/website-building\/embrace-tailwind-css-master-modern-utility-first-css-framework-development\/\">\u62e5\u62b1 Tailwind CSS\uff1a\u638c\u63e1\u5b9e\u7528\u4f18\u5148\u7684\u73b0\u4ee3 CSS \u6846\u67b6\u5f00\u53d1\u4e4b\u9053<\/a>\u3002<\/p><!-- AUTO_INTERNAL_LINKS_END -->\n\n\n\n\n<p class=\"wp-block-paragraph\">\u4e3a\u4e86\u5f00\u59cb\u4f7f\u7528\u5b83\uff0c\u4f60\u53ef\u4ee5\u901a\u8fc7\u591a\u79cd\u65b9\u5f0f\u5b89\u88c5\u3002\u6700\u5e38\u89c1\u4e14\u63a8\u8350\u7684\u65b9\u5f0f\u662f\u4f7f\u7528\u5305\u7ba1\u7406\u5de5\u5177\uff0c\u5e76\u901a\u8fc7 <code>PostCSS<\/code> \u8fdb\u884c\u914d\u7f6e\u3002<\/p>\n<!-- AUTO_SYNCED_PATTERN_INSERT_START -->\n<div class=\"grid grid-cols-1 md:grid-cols-2 gap-4 md:gap-6 mb-8 md:mb-10 mt-10\"> \r\n\t<!-- \u91cd\u590d\u5668\u5faa\u73af\u5f00\u59cb -->\r\n\t\t\r\n\t<!-- \u5546\u5bb6\u5361\u7247 -->\r\n\t<div class=\"bg-white dark:bg-gray-750 rounded-lg overflow-hidden shadow-md flex gap-1 flex-col     justify-between\" data-link=\"https:\/\/www.likacloud.com\/vi\/tolink\/wordpress-com-ai-website-builder\/\">\r\n\t\t<div class=\"flex items-start justify-between\"> \r\n\t\t\t<!-- \u5546\u5bb6logo -->\r\n\t\t\t<div class=\"w-16 h-16 bg-blue-200 dark:bg-blue-500\/30 flex items-center justify-center flex-shrink-0 p-3\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" src=\"https:\/\/www.likacloud.com\/wp-content\/uploads\/2026\/01\/20260107032104.svg\" alt=\"WordPress.com \u7f51\u7ad9\u5efa\u8bbe\u52a9\u624b\" class=\"w-12 object-contain !dark-filter08\" title=\"\">\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t<\/div>\r\n\t\t\t\r\n\t\t\t<!-- \u5546\u5bb6\u4fe1\u606f -->\r\n\t\t\t<div class=\"px-4 pt-2 flex-grow\">\r\n\t\t\t\t<div class=\"flex justify-between items-start mb-2\">\r\n\t\t\t\t\t<strong class=\"text-xl font-bold\">WordPress.com \u7f51\u7ad9\u5efa\u8bbe\u52a9\u624b<\/strong>\r\n\t\t\t\t\t\t\t\t\t<\/div>\r\n\t\t\t<\/div>\r\n\t\t<\/div>\r\n\t\t\t\t<span class=\"text-gray-500 dark:text-gray-300 !text-sm p-4 pb-0\">99.999% \u53ef\u7528\u6027+\u8de8\u533a\u5bb9\u707e\uff0c\u5168\u592924\u5c0f\u65f6\u652f\u6301\uff0c\u8d2d\u4e70\u535a\u5ba2\u5957\u9910\u514d\u8d39\u4f7f\u7528AI\u6784\u5efa\u7f51\u7ad9<\/span>\r\n\t\t\t\t<div class=\"flex flex-col gap-4 md:gap-6 justify-between p-4\"> \r\n\t\t\t<!-- \u6807\u7b7e -->\r\n\t\t\t\t\t\t\r\n\t\t\t<!-- \u6d3b\u52a8\u548c\u94fe\u63a5 --> \r\n\t\t\t<div class=\"flex justify-between items-center gap-3 flex-col\">\r\n\t\t\t\t\t\t\t\t<div class=\"text-gray-500 dark:text-gray-300 !text-sm line-clamp-1\">\u514d\u8d39\u57df\u540d\u4e00\u5e74<\/div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.likacloud.com\/vi\/tolink\/wordpress-com-ai-website-builder\/\" class=\"flex justify-end font-bold !text-lg !text-blue-600 dark:!text-blue-500\">\u8bbf\u95eeWordPress.com \u7f51\u7ad9\u5efa\u8bbe\u52a9\u624b \u2192<\/a>\r\n\t\t\t\t\t\t\t<\/div> \r\n\t\t<\/div>\r\n\t<\/div>\r\n\t\t\r\n\t<!-- \u5546\u5bb6\u5361\u7247 -->\r\n\t<div class=\"bg-white dark:bg-gray-750 rounded-lg overflow-hidden shadow-md flex gap-1 flex-col     justify-between\" data-link=\"https:\/\/www.likacloud.com\/vi\/tolink\/ultahost-website-builder\/\">\r\n\t\t<div class=\"flex items-start justify-between\"> \r\n\t\t\t<!-- \u5546\u5bb6logo -->\r\n\t\t\t<div class=\"w-16 h-16 bg-blue-200 dark:bg-blue-500\/30 flex items-center justify-center flex-shrink-0 p-3\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" src=\"https:\/\/www.likacloud.com\/wp-content\/uploads\/2025\/12\/20251227023708.webp\" alt=\"UltaHost \u7f51\u7ad9\u5efa\u8bbe\u52a9\u624b\" class=\"w-12 object-contain !dark-filter08\" title=\"\">\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t<\/div>\r\n\t\t\t\r\n\t\t\t<!-- \u5546\u5bb6\u4fe1\u606f -->\r\n\t\t\t<div class=\"px-4 pt-2 flex-grow\">\r\n\t\t\t\t<div class=\"flex justify-between items-start mb-2\">\r\n\t\t\t\t\t<strong class=\"text-xl font-bold\">UltaHost \u7f51\u7ad9\u5efa\u8bbe\u52a9\u624b<\/strong>\r\n\t\t\t\t\t\t\t\t\t<\/div>\r\n\t\t\t<\/div>\r\n\t\t<\/div>\r\n\t\t\t\t<span class=\"text-gray-500 dark:text-gray-300 !text-sm p-4 pb-0\">900+\u514d\u8d39\u3001\u53ef\u5b9a\u5236\u7684\u6a21\u677f\uff0c\u83b7\u5f97\u4f18\u5316\u7f51\u7ad9\u641c\u7d22\u66dd\u5149\u6240\u9700\u7684 SEO \u80fd\u529b<\/span>\r\n\t\t\t\t<div class=\"flex flex-col gap-4 md:gap-6 justify-between p-4\"> \r\n\t\t\t<!-- \u6807\u7b7e -->\r\n\t\t\t\t\t\t\r\n\t\t\t<!-- \u6d3b\u52a8\u548c\u94fe\u63a5 --> \r\n\t\t\t<div class=\"flex justify-between items-center gap-3 flex-col\">\r\n\t\t\t\t\t\t\t\t<div class=\"text-gray-500 dark:text-gray-300 !text-sm line-clamp-1\">\u4f18\u60e0 40%<\/div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.likacloud.com\/vi\/tolink\/ultahost-website-builder\/\" class=\"flex justify-end font-bold !text-lg !text-blue-600 dark:!text-blue-500\">\u8bbf\u95eeUltaHost \u7f51\u7ad9\u5efa\u8bbe\u52a9\u624b \u2192<\/a>\r\n\t\t\t\t\t\t\t<\/div> \r\n\t\t<\/div>\r\n\t<\/div>\r\n\t\t<!-- \u91cd\u590d\u5668\u5faa\u73af\u7ed3\u675f -->\r\n<\/div>\r\n\r\n\r\n\n<!-- AUTO_SYNCED_PATTERN_INSERT_END -->\n\n\n\n\n\n<p class=\"wp-block-paragraph\">\u9996\u5148\uff0c\u4f7f\u7528 <code>npm<\/code> \u6216 <code>yarn<\/code> \u521d\u59cb\u5316\u9879\u76ee\u5e76\u5b89\u88c5 Tailwind\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"language-bash\">npm install -D tailwindcss postcss autoprefixer\nnpx tailwindcss init<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u6267\u884c <code>init<\/code> \u547d\u4ee4\u4f1a\u521b\u5efa\u4e00\u4e2a\u540d\u4e3a <code>tailwind.config.js<\/code> \u7684\u914d\u7f6e\u6587\u4ef6\u3002\u63a5\u4e0b\u6765\uff0c\u4f60\u9700\u8981\u5728\u9879\u76ee\u7684 CSS \u5165\u53e3\u6587\u4ef6\uff08\u4f8b\u5982 <code>src\/styles.css<\/code> \u6216 <code>app\/globals.css<\/code>\uff09\u4e2d\u5f15\u5165 Tailwind \u7684\u6307\u4ee4\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"language-css\">@tailwind base;\n@tailwind components;\n@tailwind utilities;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u6700\u540e\uff0c\u5728\u4f60\u7684\u6784\u5efa\u5de5\u5177\uff08\u5982 Vite\u3001Webpack\uff09\u4e2d\u914d\u7f6e <code>PostCSS<\/code>\uff0c\u786e\u4fdd\u5b83\u4f7f\u7528 <code>Tailwind CSS<\/code> \u63d2\u4ef6\u6765\u5904\u7406\u8fd9\u4e9b\u6307\u4ee4\u3002\u5bf9\u4e8e\u50cf Next.js\u3001Vue CLI \u6216 Create React App \u8fd9\u6837\u7684\u73b0\u4ee3\u6846\u67b6\uff0c\u901a\u5e38\u5df2\u5185\u7f6e\u6216\u53ef\u4ee5\u8f7b\u677e\u96c6\u6210 PostCSS\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u9879\u76ee\u914d\u7f6e\u6587\u4ef6\u8be6\u89e3<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><code>tailwind.config.js<\/code> \u662f\u7ba1\u7406\u9879\u76ee\u5b9a\u5236\u5316\u7684\u6838\u5fc3\u3002\u5728\u8fd9\u4e2a\u6587\u4ef6\u4e2d\uff0c\u4f60\u53ef\u4ee5\u5b9a\u4e49\u4e3b\u9898\u989c\u8272\u3001\u5b57\u4f53\u3001\u65ad\u70b9\u7b49\u8bbe\u8ba1\u4ee4\u724c\uff0c\u4ee5\u53ca\u914d\u7f6e\u9700\u8981\u626b\u63cf\u54ea\u4e9b\u6587\u4ef6\u4ee5\u8fdb\u884c\u6837\u5f0f\u4f18\u5316\u3002<\/p>\n<!-- AUTO_INTERNAL_LINKS_START --><p>\u63a8\u8350\u9605\u8bfb <a href=\"https:\/\/www.likacloud.com\/de\/knowledge\/website-building\/understanding-tailwind-css-utility-first-css-framework-core-concepts\/\">\u6df1\u5165\u7406\u89e3 Tailwind CSS \u5b9e\u7528\u4f18\u5148\u7684\u73b0\u4ee3 CSS \u6846\u67b6\u6838\u5fc3\u601d\u60f3<\/a>\u3002<\/p><!-- AUTO_INTERNAL_LINKS_END -->\n\n\n\n\n<p class=\"wp-block-paragraph\">\u4e00\u4e2a\u57fa\u7840\u7684\u914d\u7f6e\u5982\u4e0b\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"language-javascript\">\/\/ tailwind.config.js\n\/** @type {import(&#039;tailwindcss&#039;).Config} *\/\nmodule.exports = {\n  content: [\n    &quot;.\/src\/**\/*.{html,js,jsx,ts,tsx,vue}&quot;,\n    &quot;.\/public\/index.html&quot;\n  ],\n  theme: {\n    extend: {\n      colors: {\n        &#039;brand-blue&#039;: &#039;#1992d4&#039;,\n      },\n    },\n  },\n  plugins: [],\n}<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><code>content<\/code> \u5b57\u6bb5\u81f3\u5173\u91cd\u8981\uff0c\u5b83\u544a\u8bc9 Tailwind \u5728\u6784\u5efa\u65f6\u5e94\u8be5\u626b\u63cf\u54ea\u4e9b\u6587\u4ef6\u4e2d\u7684\u7c7b\u540d\uff0c\u5e76\u53ea\u5c06\u7528\u5230\u7684\u6837\u5f0f\u5305\u542b\u5728\u6700\u7ec8\u7684 CSS \u6587\u4ef6\u4e2d\uff0c\u8fd9\u662f\u5b9e\u73b0\u5176\u6781\u5c0f\u7684\u751f\u4ea7\u5305\u4f53\u79ef\u7684\u5173\u952e\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u57fa\u7840\u4f7f\u7528\u4e0e\u5b9e\u7528\u7c7b\u7ec4\u5408<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u638c\u63e1 Tailwind \u7684\u5173\u952e\u5728\u4e8e\u7406\u89e3\u5176\u7c7b\u540d\u547d\u540d\u89c4\u5219\u3002\u7c7b\u540d\u901a\u5e38\u76f4\u63a5\u6620\u5c04\u5230 CSS \u5c5e\u6027\uff0c\u5e76\u9075\u5faa\u4e00\u5b9a\u7684\u6a21\u5f0f\u3002<\/p>\n<!-- AUTO_SYNCED_PATTERN_INSERT_START -->\n\n  <div class=\"flex justify-between items-center flex-col lg:flex-row xl:flex-col 2xl:flex-row gap-6 sm:gap-8 rounded-lg border border-gray-200 dark:border-gray-700 p-4 mb-8 lg:mb-10 sm:p-6 bg-white dark:bg-gray-750 shadow-md transition-colors duration-300\"\n         data-link=\"https:\/\/www.likacloud.com\/vi\/tolink\/bluehost-wordpress-hosting\/\">\n\n      <div class=\"flex flex-col gap-3 gap-4 sm:gap-6 w-full\">\n        <strong class=\"text-2xl font-semibold text-gray-900 dark:text-gray-200\">Bluehost\u5efa\u7ad9\u52a9\u624b<\/strong>\n        <div class=\"text-gray-600 dark:text-gray-300 word-word\">\u63d0\u4f9b AI \u7f51\u7ad9\u521b\u5efa\u5de5\u5177\uff0c24\/7 \u5728\u7ebf\u804a\u5929\u4e0e\u7535\u8bdd\u652f\u6301\uff0c\u4e00\u5e74\u514d\u8d39\u57df\u540d\uff0c\u514d\u8d39CDN\uff0c99.99% \u6b63\u5e38\u8fd0\u884c\u65f6\u95f4 SLA<\/div>\n      <\/div>\n\n      <div class=\"flex items-center flex-col md:flex-row lg:flex-col xl:flex-row 2xl:flex-col gap-6 shrink-0\">\n                  <a href=\"https:\/\/www.likacloud.com\/vi\/tolink\/bluehost-wordpress-hosting\/\">\n                          <!-- \u53ea\u6709\u4e00\u4e2a\u53ef\u7528 icon\uff08\u6216\u591c\u95f4\u56de\u9000\uff09\uff0c\u4e24\u79cd\u6a21\u5f0f\u5171\u7528 -->\n              <img decoding=\"async\" src=\"https:\/\/www.likacloud.com\/wp-content\/uploads\/2025\/12\/20251231095441.svg\" alt=\"\u5efa\u7ad9\u52a9\u624b LOGO\" class=\"content-promotion-card-icon h-9 min-h-9\" title=\"\">\n                      <\/a>\n          \n        <a href=\"https:\/\/www.likacloud.com\/vi\/tolink\/bluehost-wordpress-hosting\/\"\n           class=\"bg-blue-500 w-full md:w-auto lg:w-full xl:w-auto 2xl:w-full text-center !text-white dark:!text-gray-200 !px-5 !py-1.5 rounded-full hover:bg-blue-600 transition-colors\">\n          \u8bbf\u95eeBluehost        <\/a>\n      <\/div>\n    <\/div>\n\n    \n<!-- AUTO_SYNCED_PATTERN_INSERT_END -->\n\n\n\n\n\n<p class=\"wp-block-paragraph\">\u4f8b\u5982\uff0c\u95f4\u8ddd\uff08margin\u3001padding\uff09\u4f7f\u7528 <code>{property}{side}-{size}<\/code> \u7684\u6a21\u5f0f\uff1a<br \/>\n* <code>mt-4<\/code> \u8868\u793a <code>margin-top: 1rem;<\/code><br \/>\n* <code>px+<br \/>\n-6<\/code> \u8868\u793a\u5de6\u53f3\u5185\u8fb9\u8ddd\uff08padding-left &amp; padding-right\uff09\u4e3a 1.5rem\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u5bf9\u4e8e\u54cd\u5e94\u5f0f\u8bbe\u8ba1\uff0cTailwind \u91c7\u7528\u79fb\u52a8\u4f18\u5148\u7684\u65ad\u70b9\u7cfb\u7edf\u3002\u9ed8\u8ba4\u7684\u65ad\u70b9\u524d\u7f00\u6709 <code>sm:<\/code>, <code>md:<\/code>, <code>lg:<\/code>, <code>xl:<\/code>, <code>2xl:<\/code>\u3002\u76f4\u63a5\u5728\u7c7b\u540d\u524d\u52a0\u4e0a\u65ad\u70b9\u524d\u7f00\uff0c\u5373\u53ef\u5e94\u7528\u54cd\u5e94\u5f0f\u6837\u5f0f\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u8ba9\u6211\u4eec\u6784\u5efa\u4e00\u4e2a\u7b80\u5355\u7684\u5361\u7247\u7ec4\u4ef6\u6765\u76f4\u89c2\u611f\u53d7\u4e00\u4e0b\uff1a<\/p>\n<!-- AUTO_INTERNAL_LINKS_START --><p>\u63a8\u8350\u9605\u8bfb <a href=\"https:\/\/www.likacloud.com\/de\/knowledge\/website-building\/tailwind-css-complete-beginners-guide-modern-responsive-web-design\/\">Tailwind CSS \u6784\u5efa\u73b0\u4ee3\u54cd\u5e94\u5f0f\u7f51\u9875\u7684\u5b8c\u6574\u5165\u95e8\u6307\u5357<\/a>\u3002<\/p><!-- AUTO_INTERNAL_LINKS_END -->\n\n\n\n\n<pre class=\"wp-block-code\"><code class=\"language-html\">&lt;div class=&quot;max-w-sm rounded-xl overflow-hidden shadow-lg bg-white p-6 md:p-8&quot;&gt;\n  &lt;div class=&quot;font-bold text-xl text-gray-800 mb-2&quot;&gt;\u5361\u7247\u6807\u9898&lt;\/div&gt;\n  &lt;p class=&quot;text-gray-600 text-base&quot;&gt;\n    \u8fd9\u662f\u4e00\u5f20\u4f7f\u7528 Tailwind CSS \u5b9e\u7528\u7c7b\u6784\u5efa\u7684\u5361\u7247\u3002\u8fd9\u4e9b\u7c7b\u540d\u76f4\u63a5\u5b9a\u4e49\u4e86\u5b83\u7684\u8fb9\u6846\u3001\u9634\u5f71\u3001\u5185\u8fb9\u8ddd\u548c\u6587\u5b57\u6837\u5f0f\u3002\n  &lt;\/p&gt;\n  &lt;div class=&quot;mt-6&quot;&gt;\n    &lt;button class=&quot;bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded transition duration-150&quot;&gt;\n      \u70b9\u51fb\u6309\u94ae\n    &lt;\/button&gt;\n  &lt;\/div&gt;\n&lt;\/div&gt;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u5728\u8fd9\u4e2a\u4f8b\u5b50\u4e2d\uff0c\u6211\u4eec\u4f7f\u7528\u4e86\u80cc\u666f\u8272\uff08<code>bg-white<\/code>\uff09\u3001\u9634\u5f71\uff08<code>shadow-lg<\/code>\uff09\u3001\u5706\u89d2\uff08<code>rounded-xl<\/code>\uff09\u3001\u5185\u8fb9\u8ddd\uff08<code>p-6<\/code>\uff09\u3001\u6587\u5b57\u6837\u5f0f\uff08<code>text-xl<\/code>, <code>text-gray-800<\/code>\uff09\u4ee5\u53ca\u54cd\u5e94\u5f0f\u5185\u8fb9\u8ddd\uff08<code>md:p-8<\/code>\uff09\u3002\u6309\u94ae\u8fd8\u5305\u542b\u4e86\u60ac\u505c\u72b6\u6001\uff08<code>hover:bg-blue-700<\/code>\uff09\u548c\u8fc7\u6e21\u52a8\u753b\uff08<code>transition duration-150<\/code>\uff09\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u5904\u7406\u590d\u6742\u72b6\u6001\u4e0e\u4f2a\u7c7b<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Tailwind \u4e3a\u5404\u79cd\u72b6\u6001\u63d0\u4f9b\u4e86\u4fee\u9970\u7b26\u524d\u7f00\u3002\u9664\u4e86\u4e0a\u9762\u7528\u5230\u7684 <code>hover:<\/code>\uff0c\u5e38\u7528\u7684\u8fd8\u6709\uff1a<br \/>\n* <code>focus:<\/code> \u7528\u4e8e\u5143\u7d20\u83b7\u5f97\u7126\u70b9\u65f6\u7684\u6837\u5f0f\u3002<br \/>\n* <code>active:<\/code> \u7528\u4e8e\u5143\u7d20\u88ab\u6fc0\u6d3b\uff08\u5982\u9f20\u6807\u6309\u4e0b\uff09\u65f6\u7684\u6837\u5f0f\u3002<br \/>\n* <code>disabled:<\/code> \u7528\u4e8e\u7981\u7528\u72b6\u6001\u7684\u6837\u5f0f\u3002<br \/>\n* <code>group-hover:<\/code> \u5f53\u7236\u5143\u7d20\u6709 <code>group<\/code> \u7c7b\u65f6\uff0c\u7528\u4e8e\u5b50\u5143\u7d20\u7684\u60ac\u505c\u6837\u5f0f\u3002<\/p>\n<!-- AUTO_SYNCED_PATTERN_INSERT_START -->\n\n  <div class=\"flex justify-between items-center flex-col lg:flex-row xl:flex-col 2xl:flex-row gap-6 sm:gap-8 rounded-lg border border-gray-200 dark:border-gray-700 p-4 mb-8 lg:mb-10 sm:p-6 bg-white dark:bg-gray-750 shadow-md transition-colors duration-300\"\n         data-link=\"https:\/\/www.likacloud.com\/vi\/tolink\/hosting-com-sitebuilder\/\">\n\n      <div class=\"flex flex-col gap-3 gap-4 sm:gap-6 w-full\">\n        <strong class=\"text-2xl font-semibold text-gray-900 dark:text-gray-200\">hosting.com<\/strong>\n        <div class=\"text-gray-600 dark:text-gray-300 word-word\">\u514d\u8d39SSL\u3001Cloudflare CDN\u3001WAF\uff0c40+\u5168\u7403\u673a\u623f\u53ef\u9009\uff0c\u5c31\u8fd1\u66f4\u4f4e\u5ef6\u8fdf\uff0c 24\/7\/365 \u670d\u52a1\u652f\u6301\uff0c\u73b0\u5728\u53ef\u4ee5\u7701\u4e0b\u9ad8\u8fbe 67%\u7684\u8d39\u7528\uff0c\u652f\u6301 AI \u6784\u5efa\u548c SEO \u4f18\u5316<\/div>\n      <\/div>\n\n      <div class=\"flex items-center flex-col md:flex-row lg:flex-col xl:flex-row 2xl:flex-col gap-6 shrink-0\">\n                  <a href=\"https:\/\/www.likacloud.com\/vi\/tolink\/hosting-com-sitebuilder\/\">\n                          <!-- \u767d\u5929 -->\n              <img decoding=\"async\" src=\"https:\/\/www.likacloud.com\/wp-content\/uploads\/2025\/09\/20250901222940.svg\" alt=\" LOGO\" class=\"content-promotion-card-icon h-9 min-h-9 dark:hidden\" title=\"\">\n              <!-- \u591c\u95f4 -->\n              <img decoding=\"async\" src=\"https:\/\/www.likacloud.com\/wp-content\/uploads\/2025\/12\/20251228220957.webp\" alt=\" LOGO\" class=\"content-promotion-card-icon h-9 min-h-9 hidden dark:block\" title=\"\">\n                      <\/a>\n          \n        <a href=\"https:\/\/www.likacloud.com\/vi\/tolink\/hosting-com-sitebuilder\/\"\n           class=\"bg-blue-500 w-full md:w-auto lg:w-full xl:w-auto 2xl:w-full text-center !text-white dark:!text-gray-200 !px-5 !py-1.5 rounded-full hover:bg-blue-600 transition-colors\">\n          \u8bbf\u95eehosting.com        <\/a>\n      <\/div>\n    <\/div>\n\n    \n<!-- AUTO_SYNCED_PATTERN_INSERT_END -->\n\n\n\n\n\n<p class=\"wp-block-paragraph\">\u8fd9\u4e9b\u4fee\u9970\u7b26\u8ba9\u4ea4\u4e92\u72b6\u6001\u6837\u5f0f\u7684\u7f16\u5199\u53d8\u5f97\u6781\u5176\u76f4\u89c2\u548c\u96c6\u4e2d\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u9ad8\u7ea7\u5b9a\u5236\u4e0e\u9879\u76ee\u5b9e\u6218<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u5728\u5b9e\u9645\u9879\u76ee\u4e2d\uff0c\u4f60\u5f88\u5c11\u4f1a\u5b8c\u5168\u4f7f\u7528\u9ed8\u8ba4\u914d\u7f6e\u3002\u6df1\u5165\u5b9a\u5236 <code>Tailwind CSS<\/code> \u662f\u5c06\u5176\u6548\u80fd\u6700\u5927\u5316\u7684\u5fc5\u7ecf\u4e4b\u8def\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u6269\u5c55\u8bbe\u8ba1\u7cfb\u7edf<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u4f60\u53ef\u4ee5\u5728 <code>tailwind.config.js<\/code> \u6587\u4ef6\u7684 <code>theme.extend<\/code> \u5bf9\u8c61\u4e2d\u6dfb\u52a0\u81ea\u5b9a\u4e49\u503c\u3002\u8fd9\u662f\u63a8\u8350\u7684\u65b9\u5f0f\uff0c\u56e0\u4e3a\u5b83\u4f1a\u4e0e\u9ed8\u8ba4\u4e3b\u9898\u5408\u5e76\uff0c\u800c\u4e0d\u4f1a\u8986\u76d6\u6389\u9ed8\u8ba4\u503c\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"language-javascript\">\/\/ tailwind.config.js\nmodule.exports = {\n  theme: {\n    extend: {\n      colors: {\n        &#039;primary&#039;: &#039;#3b82f6&#039;,\n        &#039;secondary&#039;: &#039;#10b981&#039;,\n      },\n      spacing: {\n        &#039;128&#039;: &#039;32rem&#039;,\n      },\n      fontFamily: {\n        &#039;sans&#039;: [&#039;Inter var&#039;, &#039;system-ui&#039;, &#039;sans-serif&#039;],\n      },\n    },\n  },\n}<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u5b9a\u4e49\u4e4b\u540e\uff0c\u4f60\u5c31\u53ef\u4ee5\u5728\u9879\u76ee\u4e2d\u4f7f\u7528 <code>bg-primary<\/code>, <code>text-secondary<\/code>, <code>w-128<\/code> \u7b49\u81ea\u5b9a\u4e49\u7c7b\u4e86\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u63d0\u53d6\u53ef\u590d\u7528\u7ec4\u4ef6\u7c7b<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u867d\u7136 Tailwind \u9f13\u52b1\u76f4\u63a5\u5728 HTML \u4e2d\u4f7f\u7528\u5b9e\u7528\u7c7b\uff0c\u4f46\u5f53\u67d0\u4e9b\u7ec4\u4ef6\uff08\u5982\u6309\u94ae\u3001\u8868\u5355\u8f93\u5165\u6846\u3001\u5361\u7247\u5bb9\u5668\uff09\u5728\u9879\u76ee\u4e2d\u53cd\u590d\u51fa\u73b0\u4e14\u6837\u5f0f\u56fa\u5b9a\u65f6\uff0c\u4f7f\u7528 <code>@apply<\/code> \u6307\u4ee4\u63d0\u53d6\u516c\u5171\u6837\u5f0f\u5230 CSS \u4e2d\u662f\u4e00\u4e2a\u597d\u4e60\u60ef\uff0c\u8fd9\u6709\u52a9\u4e8e\u4fdd\u6301 HTML \u7684\u7b80\u6d01\u548c\u53ef\u7ef4\u62a4\u6027\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u5728\u4f60\u7684 CSS \u6587\u4ef6\u4e2d\u53ef\u4ee5\u8fd9\u6837\u5199\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"language-css\">.btn-primary {\n  @apply py-2 px-4 bg-blue-500 text-white font-semibold rounded-lg shadow-md hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-blue-400 focus:ring-opacity-75 transition-all;\n}<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u7136\u540e\u5728 HTML \u4e2d\u76f4\u63a5\u4f7f\u7528 <code>class=\"btn-primary\"<\/code> \u5373\u53ef\u3002\u8fd9\u7ed3\u5408\u4e86\u5b9e\u7528\u7c7b\u7684\u7075\u6d3b\u6027\u548c\u4f20\u7edf CSS \u7c7b\u7684\u53ef\u590d\u7528\u6027\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u4e0e UI \u6846\u67b6\u96c6\u6210\u5b9e\u6218<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u5728 React\u3001Vue \u6216 Svelte \u7b49\u7ec4\u4ef6\u5316\u6846\u67b6\u4e2d\uff0cTailwind \u7684\u8868\u73b0\u5c24\u4e3a\u51fa\u8272\u3002\u4f60\u53ef\u4ee5\u5c06\u6837\u5f0f\u903b\u8f91\u5b8c\u5168\u5c01\u88c5\u5728\u7ec4\u4ef6\u5185\u90e8\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u4ee5\u4e00\u4e2a React \u7ec4\u4ef6\u4e3a\u4f8b\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"language-jsx\">\/\/ Button.jsx\nexport default function Button({ children, variant = &#039;primary&#039; }) {\n  const baseClasses = &quot;px-6 py-2 rounded font-medium transition-colors&quot;;\n  const variantClasses = {\n    primary: &quot;bg-blue-600 text-white hover:bg-blue-700&quot;,\n    secondary: &quot;bg-gray-200 text-gray-800 hover:bg-gray-300&quot;,\n    outline: &quot;border border-blue-600 text-blue-600 hover:bg-blue-50&quot;,\n  };\n\nreturn (\n    &lt;button className={`${baseClasses} ${variantClasses[variant]}`}&gt;\n      {children}\n    &lt;\/button&gt;\n  );\n}<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u8fd9\u79cd\u6a21\u5f0f\u8ba9\u4f60\u53ef\u4ee5\u6784\u5efa\u51fa\u5f3a\u5927\u4e14\u98ce\u683c\u4e00\u81f4\u7684\u8bbe\u8ba1\u7cfb\u7edf\u7ec4\u4ef6\u5e93\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u6027\u80fd\u4f18\u5316\u4e0e\u751f\u4ea7\u90e8\u7f72<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Tailwind \u751f\u6210\u7684 CSS \u6587\u4ef6\u5728\u5f00\u53d1\u6a21\u5f0f\u4e0b\u53ef\u80fd\u8f83\u5927\uff0c\u56e0\u4e3a\u5b83\u5305\u542b\u4e86\u6240\u6709\u53ef\u80fd\u7684\u7c7b\u3002\u4f46\u5728\u751f\u4ea7\u73af\u5883\u4e2d\uff0c\u901a\u8fc7\u6b63\u786e\u7684\u914d\u7f6e\uff0c\u5b83\u53ef\u4ee5\u53d8\u5f97\u975e\u5e38\u5c0f\u5de7\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u542f\u7528 Purge \u4e0e\u4f18\u5316<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u5728\u65b0\u7248\u672c\u4e2d\uff0c\u4f18\u5316\u529f\u80fd\uff08\u65e7\u79f0 PurgeCSS\uff09\u901a\u8fc7 <code>content<\/code> \u914d\u7f6e\u81ea\u52a8\u542f\u7528\u3002\u786e\u4fdd\u4f60\u7684 <code>tailwind.config.js<\/code> \u6587\u4ef6\u4e2d\u7684 <code>content<\/code> \u8def\u5f84\u51c6\u786e\u8986\u76d6\u4e86\u9879\u76ee\u4e2d\u6240\u6709\u53ef\u80fd\u4f7f\u7528 Tailwind \u7c7b\u540d\u7684\u6587\u4ef6\uff08\u6a21\u677f\u3001\u7ec4\u4ef6\u3001JS \u6587\u4ef6\u7b49\uff09\u3002Tailwind \u4f1a\u9759\u6001\u5206\u6790\u8fd9\u4e9b\u6587\u4ef6\uff0c\u5e76\u53ea\u5c06\u7528\u5230\u7684\u7c7b\u6253\u5305\u5230\u6700\u7ec8\u7684 CSS \u4e2d\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u4e3a\u4e86\u8fbe\u5230\u6700\u4f73\u6548\u679c\uff0c\u4f60\u8fd8\u53ef\u4ee5\u5728\u914d\u7f6e\u4e2d\u6307\u5b9a <code>safelist<\/code> \u9009\u9879\uff0c\u6765\u4fdd\u7559\u4e00\u4e9b\u53ef\u80fd\u901a\u8fc7\u52a8\u6001\u62fc\u63a5\u751f\u6210\u7684\u7c7b\u540d\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"language-javascript\">\/\/ tailwind.config.js\nmodule.exports = {\n  content: [&#039;.\/src\/**\/*.{js,jsx,ts,tsx}&#039;],\n  safelist: [\n    &#039;bg-red-500&#039;,\n    &#039;text-center&#039;,\n    {\n      pattern: \/bg-(red|green|blue)-(100|500|700)\/, \/\/ \u52a8\u6001\u751f\u6210\u7684\u989c\u8272\u7c7b\n    },\n  ],\n}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">\u4f7f\u7528 JIT \u6a21\u5f0f<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u4ece Tailwind CSS v3.0 \u5f00\u59cb\uff0c\u5373\u65f6\u7f16\u8bd1\uff08Just-In-Time\uff09\u6a21\u5f0f\u5df2\u6210\u4e3a\u9ed8\u8ba4\u4e14\u552f\u4e00\u7684\u5f15\u64ce\u3002\u8fd9\u610f\u5473\u7740\u6837\u5f0f\u662f\u6309\u9700\u751f\u6210\u7684\uff0c\u4f60\u65e0\u9700\u518d\u624b\u52a8\u5f00\u542f\u3002\u4f60\u53ef\u4ee5\u5728\u5f00\u53d1\u8fc7\u7a0b\u4e2d\u4f7f\u7528\u4efb\u610f\u7c7b\u540d\uff0c\u751a\u81f3\u662f\u52a8\u6001\u751f\u6210\u7684\u7c7b\u540d\uff08\u5982 <code>mt-[23px]<\/code> \u8fd9\u6837\u7684\u4efb\u610f\u503c\uff09\uff0cTailwind \u90fd\u4f1a\u5373\u65f6\u4e3a\u4f60\u751f\u6210\u5bf9\u5e94\u7684 CSS\u3002\u8fd9\u5f7b\u5e95\u89e3\u51b3\u4e86\u5f00\u53d1\u73af\u5883 CSS \u6587\u4ef6\u8fc7\u5927\u7684\u95ee\u9898\uff0c\u5e76\u63d0\u4f9b\u4e86\u65e0\u4e0e\u4f26\u6bd4\u7684\u5f00\u53d1\u4f53\u9a8c\u7075\u6d3b\u6027\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u751f\u4ea7\u73af\u5883\u6784\u5efa<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u5728\u6784\u5efa\u751f\u4ea7\u7248\u672c\u65f6\uff0c\u901a\u5e38\u9700\u8981\u8bbe\u7f6e <code>NODE_ENV=production<\/code> \u73af\u5883\u53d8\u91cf\u3002\u6784\u5efa\u5de5\u5177\uff08\u5982 Vite\u3001Webpack\uff09\u4f1a\u81ea\u52a8\u542f\u7528\u6240\u6709\u4f18\u5316\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u4f8b\u5982\uff0c\u5728 <code>package.json<\/code> \u4e2d\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"language-json\">{\n  &quot;scripts&quot;: {\n    &quot;build&quot;: &quot;NODE_ENV=production vite build&quot;\n  }\n}<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\u603b\u7ed3<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><code>Tailwind CSS<\/code> \u901a\u8fc7\u5f7b\u5e95\u7684\u5b9e\u7528\u4f18\u5148\u65b9\u6cd5\u8bba\uff0c\u6539\u53d8\u4e86\u5f00\u53d1\u8005\u7f16\u5199 CSS \u7684\u65b9\u5f0f\u3002\u5b83\u5c06\u6837\u5f0f\u51b3\u7b56\u4ece\u6837\u5f0f\u8868\u8f6c\u79fb\u5230\u4e86\u6a21\u677f\u4e2d\uff0c\u901a\u8fc7\u7ec4\u5408\u539f\u5b50\u7c7b\u5b9e\u73b0\u4e86\u6781\u9ad8\u7684\u5f00\u53d1\u6548\u7387\u548c\u8bbe\u8ba1\u4e00\u81f4\u6027\u3002\u4ece\u7b80\u5355\u7684\u5b89\u88c5\u914d\u7f6e\u3001\u57fa\u7840\u7684\u7c7b\u540d\u4f7f\u7528\uff0c\u5230\u6df1\u5165\u7684\u9879\u76ee\u5b9a\u5236\u3001\u7ec4\u4ef6\u63d0\u53d6\uff0c\u518d\u5230\u9488\u5bf9\u751f\u4ea7\u73af\u5883\u7684\u6781\u81f4\u4f18\u5316\uff0cTailwind \u63d0\u4f9b\u4e86\u4e00\u5957\u5b8c\u6574\u4e14\u5f3a\u5927\u7684\u5de5\u5177\u94fe\u3002\u62e5\u62b1\u5b83\u610f\u5473\u7740\u4f60\u9700\u8981\u8f6c\u53d8\u601d\u7ef4\uff0c\u4f46\u4e00\u65e6\u638c\u63e1\uff0c\u4f60\u5c06\u53ef\u4ee5\u5728\u4e0d\u8131\u79bb HTML\/JSX \u4e0a\u4e0b\u6587\u7684\u60c5\u51b5\u4e0b\uff0c\u4ee5\u60ca\u4eba\u7684\u901f\u5ea6\u6784\u5efa\u51fa\u7cbe\u7f8e\u3001\u54cd\u5e94\u5f0f\u4e14\u6613\u4e8e\u7ef4\u62a4\u7684\u73b0\u4ee3\u7528\u6237\u754c\u9762\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">FAQ \u5e38\u89c1\u95ee\u9898<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Tailwind CSS \u751f\u6210\u7684 CSS \u6587\u4ef6\u4f1a\u4e0d\u4f1a\u5f88\u5927\uff1f<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u4e0d\u4f1a\u3002Tailwind \u5728\u751f\u4ea7\u6784\u5efa\u65f6\u4f1a\u4f7f\u7528 <code>PurgeCSS<\/code>\uff08\u6216\u7c7b\u4f3c\u6280\u672f\uff09\u6765\u626b\u63cf\u4f60\u7684\u9879\u76ee\u6587\u4ef6\uff0c\u5e76\u53ea\u5c06\u5b9e\u9645\u4f7f\u7528\u5230\u7684 CSS \u7c7b\u5305\u542b\u5728\u6700\u7ec8\u7684 CSS \u6587\u4ef6\u4e2d\u3002\u56e0\u6b64\uff0c\u6700\u7ec8\u751f\u6210\u7684 CSS \u901a\u5e38\u53ea\u6709\u51e0 KB \u5230\u5341\u51e0 KB\uff0c\u6bd4\u8bb8\u591a\u4f20\u7edf\u7684\u624b\u5199 CSS \u6216\u7ec4\u4ef6\u5e93\u7684 CSS \u8981\u5c0f\u5f97\u591a\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u5728\u56e2\u961f\u9879\u76ee\u4e2d\uff0c\u5982\u4f55\u4fdd\u8bc1\u6837\u5f0f\u4e00\u81f4\u6027\uff1f<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Tailwind \u672c\u8eab\u5c31\u662f\u4e00\u4e2a\u5f3a\u5927\u7684\u8bbe\u8ba1\u7ea6\u675f\u5de5\u5177\u3002\u901a\u8fc7\u7edf\u4e00\u7684 <code>tailwind.config.js<\/code> \u914d\u7f6e\u6587\u4ef6\uff0c\u56e2\u961f\u53ef\u4ee5\u5171\u4eab\u4e00\u5957\u989c\u8272\u3001\u95f4\u8ddd\u3001\u5b57\u4f53\u5927\u5c0f\u7b49\u8bbe\u8ba1\u4ee4\u724c\u3002\u6240\u6709\u5f00\u53d1\u8005\u90fd\u4f7f\u7528\u8fd9\u5957\u9884\u8bbe\u7684\u7c7b\u540d\u8fdb\u884c\u5f00\u53d1\uff0c\u5929\u7136\u4fdd\u8bc1\u4e86\u89c6\u89c9\u4e00\u81f4\u6027\u3002\u6b64\u5916\uff0c\u53ef\u4ee5\u7ed3\u5408 <code>@apply<\/code> \u6307\u4ee4\u6216\u7ec4\u4ef6\u5316\u6846\u67b6\u63d0\u53d6\u51fa\u901a\u7528\u7684\u7ec4\u4ef6\u7c7b\uff08\u5982\u6309\u94ae\u3001\u8f93\u5165\u6846\uff09\uff0c\u8fdb\u4e00\u6b65\u7edf\u4e00\u590d\u6742\u7ec4\u4ef6\u7684\u6837\u5f0f\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u5982\u4f55\u8986\u76d6\u6216\u4fee\u6539\u7b2c\u4e09\u65b9\u7ec4\u4ef6\u7684 Tailwind \u6837\u5f0f\uff1f<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u5bf9\u4e8e\u4f7f\u7528\u4e86 Tailwind \u7684\u7b2c\u4e09\u65b9\u7ec4\u4ef6\uff0c\u4f60\u6709\u51e0\u79cd\u5904\u7406\u65b9\u5f0f\u3002\u9996\u5148\uff0c\u5982\u679c\u7ec4\u4ef6\u5141\u8bb8\u4f20\u9012 <code>className<\/code> \u5c5e\u6027\uff0c\u4f60\u53ef\u4ee5\u76f4\u63a5\u9644\u52a0\u989d\u5916\u7684 Tailwind \u7c7b\u6765\u8986\u76d6\u6837\u5f0f\u3002\u5176\u6b21\uff0c\u4f60\u53ef\u4ee5\u901a\u8fc7\u63d0\u9ad8 CSS \u9009\u62e9\u5668\u7279\u5f02\u6027\u7684\u65b9\u5f0f\uff0c\u5728\u4f60\u7684\u5168\u5c40 CSS \u6587\u4ef6\u4e2d\u7f16\u5199\u66f4\u5177\u4f53\u7684\u9009\u62e9\u5668\u6765\u8986\u76d6\u3002\u6700\u540e\uff0c\u6700\u5f7b\u5e95\u7684\u65b9\u5f0f\u662f\u4f7f\u7528 Tailwind \u7684 <code>!important<\/code> \u4fee\u9970\u7b26\uff0c\u5728\u7c7b\u540d\u540e\u6dfb\u52a0 <code>!<\/code>\uff0c\u4f8b\u5982 <code>&lt;code&gt;bg-red-500!&lt;\/code&gt;<\/code>\uff0c\u4f46\u8fd9\u5e94\u8c28\u614e\u4f7f\u7528\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Tailwind CSS \u9002\u5408\u4e0e CSS-in-JS \u65b9\u6848\u4e00\u8d77\u4f7f\u7528\u5417\uff1f<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u8fd9\u53d6\u51b3\u4e8e\u5177\u4f53\u7684 CSS-in-JS \u5e93\u3002\u50cf <code>Styled-components<\/code> \u6216 <code>Emotion<\/code> \u8fd9\u7c7b\u8fd0\u884c\u65f6 CSS-in-JS \u65b9\u6848\uff0c\u5176\u7406\u5ff5\u4e0e Tailwind \u7684\u9759\u6001\u63d0\u53d6\u3001\u5b9e\u7528\u4f18\u5148\u54f2\u5b66\u6709\u8f83\u5927\u5dee\u5f02\uff0c\u901a\u5e38\u4e0d\u63a8\u8350\u6df7\u5408\u4f7f\u7528\u3002\u7136\u800c\uff0cTailwind \u53ef\u4ee5\u4e0e\u4e00\u4e9b\u7f16\u8bd1\u65f6 CSS-in-JS \u65b9\u6848\u6216\u5de5\u5177\u7ed3\u5408\u5f97\u5f88\u597d\uff0c\u4f8b\u5982\u5229\u7528 <code>@apply<\/code> \u6307\u4ee4\uff0c\u6216\u8005\u901a\u8fc7\u50cf <code>twin.macro<\/code> \u8fd9\u6837\u7684\u5e93\u5728 CSS-in-JS \u6a21\u677f\u5b57\u7b26\u4e32\u4e2d\u76f4\u63a5\u4f7f\u7528 Tailwind \u7c7b\u540d\u3002\u6700\u4f73\u5b9e\u8df5\u662f\u5728\u4e00\u4e2a\u9879\u76ee\u4e2d\u9009\u5b9a\u4e00\u79cd\u4e3b\u8981\u6837\u5f0f\u65b9\u6848\uff0c\u4ee5\u4fdd\u6301\u6280\u672f\u6808\u7684\u7b80\u6d01\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u5982\u4f55\u5904\u7406\u52a8\u6001\u751f\u6210\u7684\u7c7b\u540d\uff1f<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u5bf9\u4e8e\u5b8c\u5168\u52a8\u6001\u7684\u7c7b\u540d\uff08\u5982\u4ece\u6570\u636e\u5e93\u4e2d\u8bfb\u53d6\u7684\u5b57\u7b26\u4e32\uff09\uff0cTailwind \u7684 JIT \u5f15\u64ce\u65e0\u6cd5\u9884\u5148\u77e5\u6653\uff0c\u56e0\u6b64\u4e0d\u4f1a\u751f\u6210\u5bf9\u5e94\u7684 CSS\u3002\u89e3\u51b3\u65b9\u6cd5\u662f\u4f7f\u7528\u201c\u5b89\u5168\u5217\u8868\u201d\uff08Safelist\uff09\u3002\u4f60\u53ef\u4ee5\u5728 <code>tailwind.config.js<\/code> \u7684 <code>safelist<\/code> \u9009\u9879\u4e2d\uff0c\u901a\u8fc7\u5b57\u7b26\u4e32\u3001\u6b63\u5219\u8868\u8fbe\u5f0f\u6a21\u5f0f\u5217\u51fa\u6240\u6709\u53ef\u80fd\u52a8\u6001\u51fa\u73b0\u7684\u5b8c\u6574\u7c7b\u540d\uff0c\u786e\u4fdd\u5b83\u4eec\u88ab\u5305\u542b\u5728\u6700\u7ec8\u6837\u5f0f\u8868\u4e2d\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>B\u00e0i vi\u1ebft n\u00e0y l\u00e0 m\u1ed9t h\u01b0\u1edbng d\u1eabn to\u00e0n di\u1ec7n v\u1ec1 Tailwind CSS. N\u00f3 b\u1eaft \u0111\u1ea7u b\u1eb1ng vi\u1ec7c gi\u1edbi thi\u1ec7u tri\u1ebft l\u00fd c\u1ed1t l\u00f5i c\u1ee7a Tailwind CSS, \u0111\u00f3 l\u00e0 \u201ct\u00ednh h\u1eefu d\u1ee5ng \u0111\u01b0\u1ee3c \u01b0u ti\u00ean h\u00e0ng \u0111\u1ea7u\u201d, sau \u0111\u00f3 tr\u00ecnh b\u00e0y chi ti\u1ebft c\u00e1c b\u01b0\u1edbc c\u1ea7n th\u1ef1c hi\u1ec7n \u0111\u1ec3 c\u00e0i \u0111\u1eb7t Tailwind CSS th\u00f4ng qua npm, c\u1ea5u h\u00ecnh PostCSS, v\u00e0 thi\u1ebft l\u1eadp t\u1ec7p `tailwind.config.js`. B\u00e0i vi\u1ebft c\u0169ng gi\u1ea3i th\u00edch r\u00f5 quy t\u1eafc \u0111\u1eb7t t\u00ean cho c\u00e1c l\u1edbp (classes) v\u00e0 c\u00e1ch k\u1ebft h\u1ee3p ch\u00fang v\u1edbi nhau. Ngo\u00e0i ra, b\u1eb1ng c\u00e1ch x\u00e2y d\u1ef1ng m\u1ed9t v\u00ed d\u1ee5 v\u1ec1 th\u00e0nh ph\u1ea7n th\u1ebb (card) c\u00f3 kh\u1ea3 n\u0103ng th\u00edch \u1ee9ng v\u1edbi c\u00e1c thi\u1ebft b\u1ecb kh\u00e1c nhau, b\u00e0i vi\u1ebft minh h\u1ecda c\u00e1ch s\u1eed d\u1ee5ng tr\u1ef1c ti\u1ebfp c\u00e1c t\u00ean l\u1edbp \u0111\u1ec3 nhanh ch\u00f3ng ph\u00e1t tri\u1ec3n giao di\u1ec7n (styles).<\/p>","protected":false},"author":7,"featured_media":0,"template":"","meta":{"_acf_changed":false,"footnotes":""},"tags":[2257,2256,430,2271,3203],"knowledge_category":[281],"class_list":["post-12377111","knowledge_post","type-knowledge_post","status-publish","hentry","tag-css-frameworks","tag-tailwind-css","tag-frontend-development","tag-practical-first","tag-project-practice","knowledge_category-website-building"],"acf":{"site_seo_keywords":"Tailwind CSS\u6559\u7a0b,\u5b9e\u7528\u4f18\u5148CSS\u6846\u67b6,\u539f\u5b50\u7c7b,\u5b89\u88c5\u914d\u7f6e,\u9879\u76ee\u5b9e\u6218,\u54cd\u5e94\u5f0f\u8bbe\u8ba1,Web\u5f00\u53d1,\u4ece\u5165\u95e8\u5230\u5b9e\u6218\u5168\u89e3\u6790"},"_links":{"self":[{"href":"https:\/\/www.likacloud.com\/vi\/wp-json\/wp\/v2\/knowledge_posts\/12377111","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.likacloud.com\/vi\/wp-json\/wp\/v2\/knowledge_posts"}],"about":[{"href":"https:\/\/www.likacloud.com\/vi\/wp-json\/wp\/v2\/types\/knowledge_post"}],"author":[{"embeddable":true,"href":"https:\/\/www.likacloud.com\/vi\/wp-json\/wp\/v2\/users\/7"}],"version-history":[{"count":0,"href":"https:\/\/www.likacloud.com\/vi\/wp-json\/wp\/v2\/knowledge_posts\/12377111\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.likacloud.com\/vi\/wp-json\/wp\/v2\/media?parent=12377111"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.likacloud.com\/vi\/wp-json\/wp\/v2\/tags?post=12377111"},{"taxonomy":"knowledge_category","embeddable":true,"href":"https:\/\/www.likacloud.com\/vi\/wp-json\/wp\/v2\/knowledge_category?post=12377111"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}