学习tailwind

Posted by 黎子豪 on March 27, 2024

学习 tailwind -入门

这篇文章主要就是用来学习 tailwindcss,但是过程可能会有点散乱,因为是在学习的项目的过程中学的。

首先

tailwindcss 是一个 css 框架,它提供了一系列的 css 类,这些类可以用来快速地生成常见的 css 样式,例如字体大小、颜色、边框等。 我们先通过 create vite 来创建 vite 项目,推荐使用 cnpm 或者 pnpm 这里我们使用 npm。

1
npm creat vite

project 名我们取 tailwind+vite 就行了,大家可以随便取。

framework 我们选择 Vue,variant 我们选择 JavaScript,对于入门学习 js 最好。

打开 vscode 选择文件夹

安装必要的依赖

1
cnpm i

然后我们安装 tailwindcss 和 postcss autoprefixer

1
cnpm i tailwindcss postcss autoprefixer -D

进行初始化

1
  npx tailwindcss init -p

此时会出现两个额外的文件 Created Tailwind CSS config file: tailwind.config.js Created PostCSS config file: postcss.config.js

我们对 tailwind.config.js 进行配置

1
2
3
4
5
6
7
8
9
10
11
  /** @type {import('tailwindcss').Config} */
export default {
  content: [ 
    "./index.html",
    "./src/**/*.{vue,js,ts,jsx,tsx}",],
  theme: {
    extend: {},
  },
  plugins: [],
}

清除没必要的 src 下的代码 删除 compoents 文件夹 App.vue 下的代码如下

1
2
3
4
5
6
7
8
9
10
11
12
  <script setup>

</script>

<template>

</template>

<style scoped>

</style>

如果没有错误删除 src 下面应该有个 style.css 文件,没有的话可以创建一个。初始化该文件,写入如下代码

1
2
3
@tailwind base;
@tailwind components;
@tailwind utilities;

在App.vue文件中测试

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
  
<template>
  <div class="bg-white">
    <div class="mx-auto max-w-2xl px-4 py-16 sm:px-6 sm:py-24 lg:max-w-7xl lg:px-8">
      <h2 class="text-2xl font-bold tracking-tight text-gray-900">Customers also purchased</h2>

      <div class="mt-6 grid grid-cols-1 gap-x-6 gap-y-10 sm:grid-cols-2 lg:grid-cols-4 xl:gap-x-8">
        <div v-for="product in products" :key="product.id" class="group relative">
          <div class="aspect-h-1 aspect-w-1 w-full overflow-hidden rounded-md bg-gray-200 lg:aspect-none group-hover:opacity-75 lg:h-80">
            <img :src="product.imageSrc" :alt="product.imageAlt" class="h-full w-full object-cover object-center lg:h-full lg:w-full" />
          </div>
          <div class="mt-4 flex justify-between">
            <div>
              <h3 class="text-sm text-gray-700">
                <a :href="product.href">
                  <span aria-hidden="true" class="absolute inset-0" />
                  
                </a>
              </h3>
              <p class="mt-1 text-sm text-gray-500"></p>
            </div>
            <p class="text-sm font-medium text-gray-900"></p>
          </div>
        </div>
      </div>
    </div>
  </div>
</template>

<script setup>
const products = [
  {
    id: 1,
    name: 'Basic Tee',
    href: '#',
    imageSrc: 'https://tailwindui.com/img/ecommerce-images/product-page-01-related-product-01.jpg',
    imageAlt: "Front of men's Basic Tee in black.",
    price: '$35',
    color: 'Black',
  },
  // More products...
]
</script>