Tailwind CSS 教程

Tailwind CSS 首页 Tailwind CSS 路线图 Tailwind CSS 简介 Tailwind CSS 安装和环境配置 Tailwind CSS 编辑器设置

Tailwind CSS 核心概念

Tailwind CSS 实用至上基础 Tailwind CSS 悬停、聚焦及其他状态 Tailwind CSS 响应式设计 Tailwind CSS 暗黑模式 Tailwind CSS 样式复用 Tailwind CSS 添加自定义样式 Tailwind CSS 函数和指令

Tailwind CSS 自定义

Tailwind CSS 配置 Tailwind CSS 内容配置 Tailwind CSS 主题配置 Tailwind CSS 自定义屏幕 Tailwind CSS 自定义颜色 Tailwind CSS 自定义间距 Tailwind CSS 插件 Tailwind CSS 预设

Tailwind CSS 基本样式

Tailwind CSS 预检

Tailwind CSS 布局

Tailwind CSS 宽高比 Tailwind CSS 容器 Tailwind CSS 列 Tailwind CSS 后断行 Tailwind CSS 前断行 Tailwind CSS 内断行 Tailwind CSS 盒子装饰断行 Tailwind CSS 盒子大小 Tailwind CSS 显示 Tailwind CSS 浮动 Tailwind CSS 清除 Tailwind CSS 堆叠 Tailwind CSS 对象适配 Tailwind CSS 对象位置 Tailwind CSS 溢出 Tailwind CSS 滚动行为 Tailwind CSS 位置 Tailwind CSS 顶部 / 右侧 / 底部 / 左侧 Tailwind CSS 可见性 Tailwind CSS Z-Index

Tailwind CSS 弹性盒和网格

Tailwind CSS 弹性基础 Tailwind CSS 弹性方向 Tailwind CSS 弹性包裹 Tailwind CSS 弹性 Tailwind CSS 弹性增长 Tailwind CSS Flex Shrink Tailwind CSS 顺序 Tailwind CSS 网格模板列 Tailwind CSS 网格列起始/结束 Tailwind CSS 网格模板行 Tailwind CSS 网格行起始/结束 Tailwind CSS 网格自动排版 Tailwind CSS 网格自动列 Tailwind CSS 网格自动行 Tailwind CSS 间隙 Tailwind CSS 内容对齐 Tailwind CSS 项目对齐 Tailwind CSS 自身对齐 Tailwind CSS 内容对齐 Tailwind CSS 项目对齐 Tailwind CSS 自身对齐 Tailwind CSS 放置内容 Tailwind CSS 放置项目 Tailwind CSS 放置自身

Tailwind CSS 间距

Tailwind CSS 内边距 Tailwind CSS 边距 Tailwind CSS 间距

Tailwind CSS 尺寸

Tailwind CSS 宽度 Tailwind CSS 最小宽度 Tailwind CSS 最大宽度 Tailwind CSS 高度 Tailwind CSS 最小高度 Tailwind CSS 最大高度 Tailwind CSS 尺寸

Tailwind CSS 字体排版

Tailwind CSS 字体系列 Tailwind CSS 字体大小 Tailwind CSS 字体平滑 Tailwind CSS 字体样式 Tailwind CSS 字体粗细 Tailwind CSS 字体变体数字 Tailwind CSS 字母间距 Tailwind CSS 行距限制 Tailwind CSS 行高 Tailwind CSS 列表样式图片 Tailwind CSS 列表样式位置 Tailwind CSS 列表样式类型 Tailwind CSS 文本对齐 Tailwind CSS 文本颜色 Tailwind CSS 文本装饰 Tailwind CSS 文本装饰颜色 Tailwind CSS 文本装饰样式 Tailwind CSS 文本装饰粗细 Tailwind CSS 文本下划线偏移 Tailwind CSS 文本变换 Tailwind CSS 文本溢出 Tailwind CSS 文本换行 Tailwind CSS 文本缩进 Tailwind CSS 垂直对齐 Tailwind CSS 空格 Tailwind CSS 单词换行 Tailwind CSS 连字符 Tailwind CSS -内容

Tailwind CSS 背景

Tailwind CSS 背景附件 Tailwind CSS 背景剪辑 Tailwind CSS 背景颜色 Tailwind CSS 背景原点 Tailwind CSS 背景位置 Tailwind CSS 背景重复 Tailwind CSS 背景大小 Tailwind CSS 背景图片 Tailwind CSS 渐变色标

Tailwind CSS 边框

Tailwind CSS 边框半径 Tailwind CSS 边框宽度 Tailwind CSS 边框颜色 Tailwind CSS 边框样式 Tailwind CSS 分隔宽度 Tailwind CSS 分割颜色 Tailwind CSS 分割样式 Tailwind CSS 轮廓宽度 Tailwind CSS 轮廓颜色 Tailwind CSS 轮廓样式 Tailwind CSS 轮廓偏移 Tailwind CSS 环宽度 Tailwind CSS 环颜色 Tailwind CSS 环偏移宽度 Tailwind CSS 环偏移颜色

Tailwind CSS 效果

Tailwind CSS 框阴影 Tailwind CSS 框阴影颜色 Tailwind CSS 不透明度 Tailwind CSS 混合模式 Tailwind CSS 背景混合模式

Tailwind CSS 滤镜

Tailwind CSS 模糊 Tailwind CSS 亮度 Tailwind CSS 对比度 Tailwind CSS 阴影 Tailwind CSS 灰度 Tailwind CSS 色相旋转 Tailwind CSS 反转 Tailwind CSS 饱和度 Tailwind CSS 棕褐色 Tailwind CSS 背景模糊 Tailwind CSS 背景亮度 Tailwind CSS 背景对比度 Tailwind CSS 背景灰度 Tailwind CSS 背景色相旋转 Tailwind CSS 背景反转 Tailwind CSS 背景不透明度 Tailwind CSS 背景饱和度 Tailwind CSS 背景棕褐色

Tailwind CSS 表格

Tailwind CSS 边框折叠 Tailwind CSS 边框间距 Tailwind CSS 表格布局 Tailwind CSS 侧边标题

Tailwind CSS 过渡和动画

Tailwind CSS 过渡属性 Tailwind CSS 过渡持续时间 Tailwind CSS 过渡计时函数 Tailwind CSS 过渡延迟 Tailwind CSS 动画

Tailwind CSS 变换

Tailwind CSS 缩放 Tailwind CSS 旋转 Tailwind CSS 平移 Tailwind CSS 倾斜 Tailwind CSS 变换原点

Tailwind CSS 交互性

Tailwind CSS 强调色 Tailwind CSS 外观 Tailwind CSS 光标 Tailwind CSS 插入符号颜色 Tailwind CSS 指针事件 Tailwind CSS 调整大小 Tailwind CSS 滚动行为 Tailwind CSS 滚动边距 Tailwind CSS 滚动内边距 Tailwind CSS 滚动捕捉对齐 Tailwind CSS 滚动捕捉停止 Tailwind CSS 滚动捕捉类型 Tailwind CSS 触摸操作 Tailwind CSS 用户选择 Tailwind CSS 即将变更

Tailwind CSS SVG

Tailwind CSS 填充 Tailwind CSS 描边 Tailwind CSS 描边宽度

Tailwind CSS 可访问性

Tailwind CSS 屏幕阅读器 Tailwind CSS 强制颜色调整

Tailwind CSS 额外内容

Tailwind CSS 与预处理器配合使用 Tailwind CSS 生产环境优化

Tailwind CSS 参考

Tailwind CSS 核心概念 Tailwind CSS 自定义 Tailwind CSS 布局 Tailwind CSS 弹性框和网格 Tailwind CSS 间距 Tailwind CSS 大小 Tailwind CSS 排版 Tailwind CSS 背景 Tailwind CSS 边框 Tailwind CSS 效果 Tailwind CSS 滤镜 Tailwind CSS 表格 Tailwind CSS 过渡和动画 Tailwind CSS 变换 Tailwind CSS 交互性

Tailwind CSS 资源

Tailwind CSS 讨论 Tailwind CSS 实用资源


Tailwind CSS - 响应式设计

响应式设计确保您的网页内容能够流畅地适应各种屏幕尺寸和设备,从手机到大型桌面显示器。Tailwind CSS 通过根据屏幕尺寸应用实用类,简化了创建自适应界面的过程,无需自定义媒体查询。

要开始使用 Tailwind CSS 进行响应式设计,请将视口元标记添加到 HTML 的 <head> 部分。此标记可帮助您的布局在不同设备上正确缩放。

<meta name="viewport" content="width=device-width, initial-scale=1.0">

应用实用程序类

要将实用程序类应用于特定的屏幕尺寸,只需在类名前添加断点名称,后跟一个冒号(:)即可。这种方法允许您根据屏幕尺寸控制实用程序类的生效时间。

示例

<!-- Font size of text 2xl by default, 
        3xl on medium screens, and 4xl on large screens -->
<header class="text-2xl md:text-3xl lg:text-4xl">
    Tailwind CSS Responsive Design
</header>

Tailwind CSS 提供五个默认断点。以下是每个断点的最小宽度及其对应的 CSS 媒体查询的概述。

断点名称 最小宽度 CSS 媒体查询
sm 640px @media (min-width: 640px) { ... }
md 768px @media (min-width: 768px) { ... }
lg 1024px @media (min-width: 1024px) { ... }
xl 1280px @media (min-width: 1280px) { ... }
2xl 1536px @media (min-width: 1536px) { ... }

Tailwind CSS 允许您根据屏幕尺寸自定义几乎所有设计元素,而不仅仅是布局。这包括调整字母间距和光标样式等细节,以适应不同的设备。

这是一个动态调整布局的个人资料卡片组件的实际示例:在较小的屏幕上,它将图像和文本垂直堆叠,而在较大的屏幕上,则将它们并排排列。

示例

<!DOCTYPE>
<html>
<head>
    <script src="https://cdn.tailwindcss.com"></script>
</head>

<body class="bg-gray-200 p-6">
    <div class="max-w-md mx-auto bg-white rounded-xl shadow-xl
                overflow-hidden sm:max-w-lg lg:max-w-2xl
                transition-transform transform hover:scale-105">
        <div class="relative">
            <div class="absolute inset-0 bg-gradient-to-r 
                        from-purple-300 via-pink-400 to-red-300 h-40 
                        sm:h-56"></div>
            <div class="relative sm:flex sm:items-center 
                    sm:space-x-6 p-6">
                <div class="sm:w-1/3">
                    <img class="w-32 h-32 object-cover rounded-full 
                            border-4 border-white shadow-lg sm:h-40 
                            sm:w-40" 
                            src="https://www.cainiaomax.com/w3images/avatar2.png"
                            alt="Profile picture">
                </div>
                <div class="p-6 sm:w-2/3">
                    <h2 class="text-3xl font-bold text-gray-800 
                            mb-3">Jane Doe</h2>
                    <p class="text-gray-600 leading-relaxed mb-4 
                        text-base">
                        A passionate web developer with a
                        knack for creating intuitive and engaging
                        user experiences. Jane loves exploring
                        new technologies and is always eager to
                        learn and improve her skills.
                    </p>
                    <a href="#" class="inline-block bg-gradient-to-r
                        from-indigo-500 to-purple-600 text-white 
                        hover:from-indigo-600 hover:to-purple-700 
                        py-3 px-6 rounded-lg shadow-lg 
                        transition-transform transform 
                        hover:scale-105 font-semibold text-lg">
                        View Profile
                    </a>
                </div>
            </div>
        </div>
    </div>
</body>

</html>

此示例的工作原理如下:

  • ma​​x-w-md 设置较小屏幕上的最大宽度。
  • 在中型和大型屏幕上,sm:max-w-lg 和 lg:max-w-2xl 会增加卡片的宽度以实现更佳的适配。
  • sm:flex 调整布局,以便在中型及更大屏幕上并排显示图片和文字。
  • sm:items-center 将项目垂直居中。
  • sm:w-1/3 和 sm:w-2/3 调整中型及更大屏幕上图片和文字区域的宽度,以确保布局平衡。

在本例中,个人资料卡片默认垂直堆叠图片和文字。我们使用 sm(中屏幕)和 lg(大屏幕)断点来调整卡片的布局。

移动优先

Tailwind CSS 遵循移动优先的设计理念。这意味着您首先要创建适合小屏幕的样式,然后使用断点调整以适应更大的屏幕。

在 Tailwind 中,不带前缀的实用类(例如 text-center)默认适用于所有屏幕尺寸。对于更大的屏幕,您可以使用带前缀的类(例如 md:text-left)在特定断点处修改样式。这有助于您设计基于屏幕尺寸变化的响应式布局。

定位移动屏幕

使用 Tailwind CSS 时,请务必记住,要为移动屏幕设置元素的样式,您应该使用不带前缀的实用类。 sm: 前缀用于在较小断点(640px 及以上)处应用样式,并非专门针对移动设备。

对于较大的屏幕,请添加特定于断点的样式。md: 前缀将样式应用于 768px 及更宽的屏幕。例如,md:bg-blue-500 将 768px 及以上屏幕上的背景颜色设置为蓝色。

示例

<!DOCTYPE html>
<html lang="en">
<head>  
    <script src="https://cdn.tailwindcss.com"></script>
</head>

<body class="p-4">
    <div class="bg-gray-300 md:bg-blue-500 text-gray-800 
        md:text-white p-6 rounded">
        <p class="text-center">
            This box changes color based on screen size.
        </p>
    </div>
</body>

</html>

相反,对于移动样式,请使用不带前缀的实用程序,并为更大的屏幕添加特定于断点的类。

示例

<!DOCTYPE html>
<html lang="en">
<head>  
    <script src="https://cdn.tailwindcss.com"></script>
</head>
<body class="p-4">
    <div class="bg-red-500 lg:bg-green-500 text-white 
                p-6 rounded-lg">
        <p class="text-center">
            This box changes color based on screen size.
        </p>
    </div>
</body>

</html>

因此,请先针对移动设备进行设计,然后再在此基础上添加适用于更大屏幕的样式。这种方法可以让您的设计具有适应性和响应性。

定位断点范围

在 Tailwind CSS 中,使用断点(例如 md:flex)应用的样式将默认在该断点处以及所有更大的屏幕尺寸下生效。

要仅在特定屏幕尺寸范围内应用样式,您可以将断点修饰符与 ma​​x-* 修饰符组合使用,以将这些样式限制在该特定范围内。

示例

<!DOCTYPE html>
<html lang="en">
<head>
    <script src="https://cdn.tailwindcss.com"></script>
</head>

<body class="p-4">
    <div class="bg-gray-200 p-4 border border-gray-400 
                rounded-lg md:max-lg:bg-blue-300 lg:max-xl:bg-green-300">
        <h2 class="text-gray-800 md:max-lg:text-white 
                   lg:max-xl:text-black">
            Responsive Background and Text
        </h2>
        <p class="text-gray-600 md:max-lg:text-gray-800 
                  lg:max-xl:text-gray-900">
            The background color and text color change based 
            on screen size ranges.
        </p>
    </div>
</body>

</html>

修饰符:

  • ma​​x-sm:将样式应用于小屏幕(低于 640px)。
  • ma​​x-md:将样式应用于中屏幕(低于 768px)。
  • ma​​x-lg:将样式应用于大屏幕(低于 1024px)。
  • ma​​x-xl:将样式应用于超大屏幕(低于 1280px)。
  • ma​​x-2xl:将样式应用于 2XL 屏幕(低于 1536px)。

这些修饰符通过仅在所需的屏幕尺寸范围内应用样式来帮助您创建有效的响应式设计。

在特定屏幕尺寸下应用样式断点

使用 Tailwind CSS,结合使用响应式实用程序,根据屏幕尺寸范围显示或隐藏元素。

例如,如果您希望仅在中等尺寸屏幕(768px 到 1023px)上显示侧边栏,并在较小和较大的屏幕上隐藏它,请使用 md: 类在中等屏幕上显示它,使用 lg:hidden 在大屏幕上隐藏它。

示例

<!DOCTYPE html>
<html lang="en">
<head> 
    <script src="https://cdn.tailwindcss.com"></script>
</head>

<body class="bg-gray-100 p-4">
    <!-- Content visible only on screens between 
        768px (md) and 1023px (lg) -->
    <div class="hidden md:block lg:hidden bg-blue-500 
                text-white p-4 rounded">
        This sidebar is visible only on screens
        between 768px and 1023px.
    </div>
</body>

</html>

此示例确保元素仅在指定范围内可见。

Tailwind CSS 中的自定义断点

Tailwind CSS 允许您创建自定义断点以满足您的设计需求。您可以在 tailwind.config.js 文件 中设置这些断点。

如何自定义断点

在 tailwind.config.js 文件 中,您可以在 screens 键下指定自定义断点。以下是设置自定义断点的方法。

/** @type {import('tailwindcss').Config} */
module.exports = {
  theme: {
    screens: {
      'mobile': '500px', // Custom breakpoint for mobile devices
      'tablet': '800px', // Custom breakpoint for tablets
      'large-screen': '1400px', // Custom breakpoint for large screens
    },
  },
}

这是一个使用这些自定义断点的简单示例。

示例

<!DOCTYPE html>
<html lang="en">
<head> 
    <script src="https://cdn.tailwindcss.com"></script>
</head>

<body class="p-6">
    <div class="bg-gray-200 p-4">
        <h2 class="text-lg font-bold">Responsive Gallery</h2>
        <div class="small:w-full medium:grid medium:grid-cols-2 
            large:grid-cols-3 gap-4">
            <div class="bg-red-300 p-4">Sunny Beach</div>
            <div class="bg-yellow-400 p-4">Mountain Hike</div>
            <div class="bg-green-500 p-4">City Skyline</div>
            <div class="bg-blue-600 p-4">Forest Trail</div>
            <div class="bg-purple-700 p-4">Desert Sunset</div>
            <div class="bg-pink-800 p-4">Ocean Waves</div>
        </div>
    </div>
</body>

</html>

功能:

  • 小屏幕上全宽显示:对于宽度小于 500px 的屏幕,图库项目将以全宽垂直堆叠。
  • 中屏幕上两列显示:对于宽度为 800px 及更宽的屏幕,图库项目将以两列网格显示。
  • 大屏幕上三列显示:对于宽度为 1400px 及更宽的屏幕,图库项目将调整为三列网格。

使用任意值的自定义断点

如果您需要默认断点之外的自定义断点,可以使用带有 min 或 ma​​x 修饰符的任意值来创建符合您需求的断点。

示例

<!DOCTYPE html>
<html lang="en">
<head> 
    <script src="https://cdn.tailwindcss.com"></script>
</head>
<body class="p-4 bg-gray-100">
    <div class="text-base min-[400px]:text-lg max-[800px]:text-xl
                min-[400px]:text-blue-500 max-[800px]:text-green-500 
                p-4 rounded bg-white shadow-md">
        This text changes size and color based on custom screen widths.
    </div>
</body>

</html>

在此示例中,文本大小和颜色根据屏幕宽度而变化:在 400px 时文本变大且变为蓝色,在 800px 时文本变大且变为绿色。