动态波点背景
这是一个背景集合,使用 CSS Radial-gradient。
HTMLCSSTailwind CSS
Polka Dot BG
A clean, gently drifting polka dot pattern. Lightweight and perfect for modern UI.
这是一个背景组件,使用 CSS 的“radial-gradient”来绘制轻量且干净的圆点图案。它不使用任何图像,因此加载速度快并且完全可定制。
用例和功能
- LP和英雄部分:作为主视觉的背景,添加一个不太强烈的动作以给人现代的印象。
- 卡片和模态的背景:当您厌倦了简单的单色背景时,非常适合作为强调。
- 性能:由于仅使用CSS完成,而不加载图像(SVG或PNG),因此不会对LCP(Largest Contentful Paint)产生负面影响。
设计和用户体验(Design & UX)的要点
- 微妙的动画:使用“变换”缓慢地对角移动,为静态页面带来深度和节奏。
- 晕影效果:图案在中心清晰可见,并且向边缘混合到背景颜色的覆盖层(“径向渐变”)增加了上面放置的文本和内容的可见性。
- 兼容深色模式:旨在通过利用
:global(.dark)类和媒体查询无缝切换背景颜色和点颜色。
如何定制(定制指南)
您只需更改 CSS 变量即可轻松调整点的大小和间距。
--dot-size:点半径(例如,2px会使其变大)--dot-space:点之间的空间(例如32px会降低密度)--dot-color-light/--dot-color-dark:更改点颜色。我们建议选择与您的主题颜色相匹配的浅色。
实现代码(Implementation)
export const PolkaDotBackground: React.FC<{ children?: React.ReactNode }> = ({ children }) => {
return (
<div className="polka-container relative w-full min-h-[400px] flex items-center justify-center overflow-hidden bg-slate-50 dark:bg-slate-950">
{/* Polka Dot Pattern */}
<div className="polka-dots absolute inset-0"></div>
{/* Vignette Overlay */}
<div className="pointer-events-none absolute inset-0 bg-[radial-gradient(circle_at_center,transparent_0%,rgba(248,250,252,0.85)_100%)] dark:bg-[radial-gradient(circle_at_center,transparent_0%,rgba(2,6,23,0.85)_100%)]"></div>
{/* Content */}
<div className="relative z-10">
{children}
</div>
</div>
);
}; 浏览器支持
完全支持所有现代浏览器(Chrome、Firefox、Safari、Edge)。由于它是使用 GPU 加速的“变换”进行动画处理的,因此即使在滚动或执行其他繁重处理时也能非常流畅地工作。