Skip to content

Tailwind CSS - 效果

Tailwind CSS 提供了一整套全面的工具类,用于为元素应用惊艳的视觉效果。这包括阴影(shadows)、不透明度(opacity)、混合模式(blend modes)、滤镜(filters)等。掌握这些工具类是创建现代化、视觉吸引力强且交互性高的用户界面的关键。

以下是 Tailwind CSS 中最常用的效果类别摘要。

工具类类别描述示例类
Box Shadow控制元素的盒子阴影,提供深度效果。shadow-sm, shadow-md, shadow-xl, shadow-inner
Box Shadow Color设置盒子阴影的颜色,与主题的调色板兼容。shadow-cyan-500/50, shadow-indigo-800
Opacity控制元素的透明度。opacity-0, opacity-50, opacity-100
Mix Blend Mode定义元素内容应如何与其父元素的背景混合。mix-blend-multiply, mix-blend-screen, mix-blend-overlay
Background Blend Mode定义元素的背景图片应如何与其背景颜色混合。bg-blend-multiply, bg-blend-lighten
Filters & Backdrop Filters对元素或其背景应用模糊(blur)、亮度(brightness)和饱和度(saturation)等图形效果。blur-md, brightness-125, saturate-150, backdrop-blur-lg

让我们组合几种效果来构建一个流行的“磨砂玻璃”UI 组件。此示例使用 backdrop-blur 创建磨砂效果,box-shadow 增加深度,并在背景颜色上使用 opacity 以使背景图像透出。我们还将添加一个平滑的 transition 以实现悬停效果。

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<script src="https://cdn.tailwindcss.com"></script>
<title>Effects Example</title>
</head>
<body class="antialiased">
<div class="min-h-screen bg-cover bg-center flex items-center justify-center p-4" style="background-image: url('https://images.unsplash.com/photo-1617957718641-089285f92278?q=80&w=2070')">
<!-- 磨砂玻璃卡片 -->
<div class="group w-full max-w-sm p-8 rounded-xl
bg-white/20
backdrop-blur-lg
shadow-2xl shadow-black/20
ring-1 ring-white/20
transition-all duration-300 hover:shadow-black/30 hover:scale-105">
<h3 class="text-2xl font-bold text-white text-shadow mb-2">现代UI卡片</h3>
<p class="text-white/80 text-shadow-sm">
这张卡片结合了 `backdrop-blur`、`opacity` 和 `box-shadow` 来创建磨砂玻璃效果。悬停可查看过渡动画。
</p>
</div>
</div>
<!-- 这是一个自定义的 text-shadow 工具类,你可以通过插件添加它 -->
<style type="text/tailwindcss">
@layer utilities {
.text-shadow {
text-shadow: 0 2px 4px rgb(0 0 0 / 0.5);
}
.text-shadow-sm {
text-shadow: 0 1px 2px rgb(0 0 0 / 0.5);
}
}
</style>
</body>
</html>
  • 使用过渡动画:始终将交互元素(如 :hover 或 :focus)上的效果与 transition 工具类(transition-all、duration-300、ease-in-out)搭配使用,以确保平滑的视觉变化。这能极大地改善用户体验。
  • 性能开销:请注意,复杂的视觉效果,特别是 blur、backdrop-filter 和大型 box-shadow,对浏览器而言可能需要大量的计算资源来渲染。请谨慎使用,并在低性能设备上测试其表现。
  • 可访问性:使用 opacity 时,请确保文本和重要的 UI 元素与背景之间有足够的对比度,以保持可读性。过低的 opacity 值可能导致内容难以访问。