duskmoon-dev-css-art
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
Chinese@duskmoon-dev/css-art Skill
@duskmoon-dev/css-art 使用教程
Overview
概述
@duskmoon-dev/css-art@duskmoon-dev/css-artInstallation
安装
bash
undefinedbash
undefinedBun
Bun
bun add @duskmoon-dev/css-art
bun add @duskmoon-dev/css-art
npm
npm
npm install @duskmoon-dev/css-art
npm install @duskmoon-dev/css-art
pnpm
pnpm
pnpm add @duskmoon-dev/css-art
undefinedpnpm add @duskmoon-dev/css-art
undefinedSetup
配置
CSS Import
CSS导入
css
@import "@duskmoon-dev/css-art";All art styles are wrapped in , so they won't conflict with 's .
@layer css-art { }@duskmoon-dev/core@layer components { }css
@import "@duskmoon-dev/css-art";所有艺术样式都包裹在中,因此不会与的产生冲突。
@layer css-art { }@duskmoon-dev/core@layer components { }Using with @duskmoon-dev/core
与@duskmoon-dev/core搭配使用
css
@import "tailwindcss";
@import "@duskmoon-dev/core";
@import "@duskmoon-dev/css-art";css
@import "tailwindcss";
@import "@duskmoon-dev/core";
@import "@duskmoon-dev/css-art";Available Art Components
可用艺术组件
Celestial
天体类
-
— Moon with craters, crescent variant, and animated glow
art-moon- Variants: ,
art-moon-crescentart-moon-glow - Sizes: (4rem), default (8rem),
art-moon-sm(12rem),art-moon-lg(16rem)art-moon-xl - Custom properties: ,
--art-moon-size,--art-moon-color,--art-moon-shadow--art-moon-glow
- Variants:
-
— Sun with radial gradient, spinning rays, and pulse animation
art-sun- Variants: ,
art-sun-rays,art-sun-sunsetart-sun-pulse - Sizes: (4rem), default (8rem),
art-sun-sm(12rem),art-sun-lg(16rem)art-sun-xl - Custom properties: ,
--art-sun-size,--art-sun-color,--art-sun-corona--art-sun-glow
- Variants:
-
— Animated atom with three orbiting electrons and pulsing nucleus
art-atom- Sizes: (180px), default (360px),
art-atom-sm(480px)art-atom-lg - Children: ,
.electron,.electron-alpha— three electron orbits.electron-omega - Custom properties: ,
--art-atom-size,--art-atom-color,--art-atom-electron-color--art-atom-speed
- Sizes:
-
— Solar eclipse with six animated corona layers
art-eclipse- Sizes: (300px), default (600px),
art-eclipse-sm(800px)art-eclipse-lg - Children: through
.layer.layer-1— six corona layers.layer.layer-6 - Custom properties: ,
--art-eclipse-size--art-eclipse-bg
- Sizes:
-
— 带有陨石坑的月亮,包含新月变体和发光动画
art-moon- 变体:,
art-moon-crescentart-moon-glow - 尺寸:(4rem)、默认(8rem)、
art-moon-sm(12rem)、art-moon-lg(16rem)art-moon-xl - 自定义属性:,
--art-moon-size,--art-moon-color,--art-moon-shadow--art-moon-glow
- 变体:
-
— 带有径向渐变、旋转光线和脉冲动画的太阳
art-sun- 变体:,
art-sun-rays,art-sun-sunsetart-sun-pulse - 尺寸:(4rem)、默认(8rem)、
art-sun-sm(12rem)、art-sun-lg(16rem)art-sun-xl - 自定义属性:,
--art-sun-size,--art-sun-color,--art-sun-corona--art-sun-glow
- 变体:
-
— 带有三个轨道电子和脉冲原子核的动画原子
art-atom- 尺寸:(180px)、默认(360px)、
art-atom-sm(480px)art-atom-lg - 子元素:,
.electron,.electron-alpha— 三个电子轨道.electron-omega - 自定义属性:,
--art-atom-size,--art-atom-color,--art-atom-electron-color--art-atom-speed
- 尺寸:
-
— 带有六层动画日冕的日食效果
art-eclipse- 尺寸:(300px)、默认(600px)、
art-eclipse-sm(800px)art-eclipse-lg - 子元素:至
.layer.layer-1— 六层日冕.layer.layer-6 - 自定义属性:,
--art-eclipse-size--art-eclipse-bg
- 尺寸:
Landscape
风景类
- — Mountain peak with snow cap, range variant with multiple peaks
art-mountain- Variants: ,
art-mountain-range,art-mountain-sunsetart-mountain-forest - Sizes: (10rem×6rem), default (16rem×10rem),
art-mountain-sm(24rem×15rem)art-mountain-lg - Children (range): — individual peaks within a range
.art-peak - Custom properties: ,
--art-mountain-width,--art-mountain-height,--art-mountain-color,--art-mountain-shadow--art-mountain-snow
- Variants:
- — 带有雪顶的山峰,包含多峰山脉变体
art-mountain- 变体:,
art-mountain-range,art-mountain-sunsetart-mountain-forest - 尺寸:(10rem×6rem)、默认(16rem×10rem)、
art-mountain-sm(24rem×15rem)art-mountain-lg - 子元素(山脉):— 山脉中的单个山峰
.art-peak - 自定义属性:,
--art-mountain-width,--art-mountain-height,--art-mountain-color,--art-mountain-shadow--art-mountain-snow
- 变体:
Weather
天气类
- — Snowflake dot with optional Unicode character variant
art-snowflake- Variants: (❆ character),
art-snowflake-unicode(falling animation)art-snowflake-fall - Custom properties: ,
--art-snowflake-size,--art-snowflake-color--art-snowflake-duration
- Variants:
- — 雪花点,可选Unicode字符变体
art-snowflake- 变体:(❆字符)、
art-snowflake-unicode(下落动画)art-snowflake-fall - 自定义属性:,
--art-snowflake-size,--art-snowflake-color--art-snowflake-duration
- 变体:
Interactive
交互类
-
— Interactive plasma ball with glass sphere, electrode, electric rays, and toggle switch
art-plasma-ball- Sizes: (200px), default (350px),
art-plasma-ball-sm(500px)art-plasma-ball-lg - Uses CSS selectors for toggle behavior (no JS required)
input:checked - Children: ,
input.switcher,.glassball,.electrode,.rays,.ray,.base.switch - Custom properties: ,
--art-plasma-ball-size--art-plasma-ball-base-color
- Sizes:
-
— CSS anchor-positioned circular gallery with 20 rotating card thumbnails
art-circular-gallery- Sizes: (400px), default (600px),
art-circular-gallery-sm(800px)art-circular-gallery-lg - Children: (center title),
h1elements (one per card) withdivattribute,data-title(card thumbnail)a > img - Uses CSS ,
offset-path, andposition-anchorfor hover/selection behavior — no JS:target - Custom properties: ,
--art-circular-gallery-size,--art-circular-gallery-radius--art-circular-gallery-card-width
- Sizes:
-
— 交互式等离子球,包含玻璃球、电极、电子射线和切换开关
art-plasma-ball- 尺寸:(200px)、默认(350px)、
art-plasma-ball-sm(500px)art-plasma-ball-lg - 使用CSS选择器实现切换行为(无需JS)
input:checked - 子元素:,
input.switcher,.glassball,.electrode,.rays,.ray,.base.switch - 自定义属性:,
--art-plasma-ball-size--art-plasma-ball-base-color
- 尺寸:
-
— 基于CSS锚点定位的圆形画廊,带有20个旋转卡片缩略图
art-circular-gallery- 尺寸:(400px)、默认(600px)、
art-circular-gallery-sm(800px)art-circular-gallery-lg - 子元素:(中心标题)、带
h1属性的data-title元素(每个卡片一个)、div(卡片缩略图)a > img - 使用CSS ,
offset-path和position-anchor实现悬停/选中行为——无需JS:target - 自定义属性:,
--art-circular-gallery-size,--art-circular-gallery-radius--art-circular-gallery-card-width
- 尺寸:
Scenes
场景类
-
— A cat in a spacesuit gazing at the night sky with stars and a glowing moon
art-cat-stargazer- Sizes: (300px), default (500px),
art-cat-stargazer-sm(700px)art-cat-stargazer-lg - Children: ,
.moon,.cat,.cat .bubble,.cat .backpack,.cat .tail,.cat .body,.cat .ear.cat .head - Custom properties:
--art-cat-stargazer-size
- Sizes:
-
— Blooming flowers with grass, light particles, and floating heart bubbles against a night sky
art-flower-animation- Sizes: (300px), default (600px),
art-flower-animation-sm(900px)art-flower-animation-lg - Children: ,
.night,.flowersthrough.flower.flower--1,.flower--4,.bubbles.bubble - Custom properties: ,
--art-flower-animation-size--art-flower-animation-bg
- Sizes:
-
— 穿着太空服的猫咪仰望夜空,带有星星和发光月亮
art-cat-stargazer- 尺寸:(300px)、默认(500px)、
art-cat-stargazer-sm(700px)art-cat-stargazer-lg - 子元素:,
.moon,.cat,.cat .bubble,.cat .backpack,.cat .tail,.cat .body,.cat .ear.cat .head - 自定义属性:
--art-cat-stargazer-size
- 尺寸:
-
— 绽放的花朵,搭配草地、光粒子和夜空背景下的漂浮心形气泡
art-flower-animation- 尺寸:(300px)、默认(600px)、
art-flower-animation-sm(900px)art-flower-animation-lg - 子元素:,
.night,.flowers至.flower.flower--1,.flower--4,.bubbles.bubble - 自定义属性:,
--art-flower-animation-size--art-flower-animation-bg
- 尺寸:
Abstract / Generative
抽象/生成类
-
— 3D spinning Olympic-style color rings with reflections and perspective
art-color-spin- Sizes: (385px), default (770px),
art-color-spin-sm(1000px)art-color-spin-lg - Children: (required container),
ul× 4 (one per ring)ul > li - Custom properties: ,
--art-color-spin-sizethrough--art-color-spin-color1--art-color-spin-color4
- Sizes:
-
— Synthwave-aesthetic 3D starfield tunnel with neon grid walls and animated stars
art-synthwave-starfield- Sizes: (300px), default (600px),
art-synthwave-starfield-sm(900px)art-synthwave-starfield-lg - Modifier: — pauses all animations
art-synthwave-starfield-paused - Children: ,
.art-synthwave-starfield-sides.art-synthwave-starfield-lefrig,.art-synthwave-starfield-sides.art-synthwave-starfield-topbot(×2).art-synthwave-starfield-stars - Custom properties: ,
--art-synthwave-starfield-size--art-synthwave-starfield-line-color
- Sizes:
-
— 3D旋转的奥运风格彩色环,带有反射和透视效果
art-color-spin- 尺寸:(385px)、默认(770px)、
art-color-spin-sm(1000px)art-color-spin-lg - 子元素:(必填容器)、
ul×4(每个环一个)ul > li - 自定义属性:,
--art-color-spin-size至--art-color-spin-color1--art-color-spin-color4
- 尺寸:
-
— 合成波美学的3D星空隧道,带有霓虹网格墙和动画星星
art-synthwave-starfield- 尺寸:(300px)、默认(600px)、
art-synthwave-starfield-sm(900px)art-synthwave-starfield-lg - 修饰符:— 暂停所有动画
art-synthwave-starfield-paused - 子元素:,
.art-synthwave-starfield-sides.art-synthwave-starfield-lefrig,.art-synthwave-starfield-sides.art-synthwave-starfield-topbot(×2).art-synthwave-starfield-stars - 自定义属性:,
--art-synthwave-starfield-size--art-synthwave-starfield-line-color
- 尺寸:
Gaming
游戏类
- — CSS-only game controller switch (Nintendo Switch inspired)
art-csswitch- Sizes: , default,
art-csswitch-smart-csswitch-lg - Children: complex controller structure with ,
.controller,.joycon-left,.joycon-right,.frame,.main-frame,.mushroom,.direction,.bar,.logo.light - Custom properties: ,
--art-csswitch-size,--color,--color-shadow,--joycon-left,--joycon-left-shadow,--joycon-right--joycon-right-shadow
- Sizes:
- — 纯CSS实现的游戏手柄开关(灵感来自任天堂Switch)
art-csswitch- 尺寸:, 默认,
art-csswitch-smart-csswitch-lg - 子元素:复杂的手柄结构,包含,
.controller,.joycon-left,.joycon-right,.frame,.main-frame,.mushroom,.direction,.bar,.logo.light - 自定义属性:,
--art-csswitch-size,--color,--color-shadow,--joycon-left,--joycon-left-shadow,--joycon-right--joycon-right-shadow
- 尺寸:
Loading
加载类
- — Animated snowball loading spinner with orbital rings
art-snowball-preloader- Sizes: , default,
art-snowball-preloader-smart-snowball-preloader-lg - Children: ,
.art-snowball-preloader-ball,.art-snowball-preloader-ball-texture,.art-snowball-preloader-ball-inner-shadow,.art-snowball-preloader-ball-outer-shadow,.art-snowball-preloader-ball-side-shadows,.art-snowball-preloader-inner-ring,.art-snowball-preloader-outer-ring.art-snowball-preloader-track-cover - Custom properties: ,
--art-snowball-preloader-size--art-snowball-preloader-bg
- Sizes:
- — 带有轨道环的动画雪球加载 spinner
art-snowball-preloader- 尺寸:, 默认,
art-snowball-preloader-smart-snowball-preloader-lg - 子元素:,
.art-snowball-preloader-ball,.art-snowball-preloader-ball-texture,.art-snowball-preloader-ball-inner-shadow,.art-snowball-preloader-ball-outer-shadow,.art-snowball-preloader-ball-side-shadows,.art-snowball-preloader-inner-ring,.art-snowball-preloader-outer-ring.art-snowball-preloader-track-cover - 自定义属性:,
--art-snowball-preloader-size--art-snowball-preloader-bg
- 尺寸:
UI Components
UI组件类
- — Gemini-style animated conic-gradient border with glow halo on a textarea input
art-gemini-input- Sizes: (280px), default (450px),
art-gemini-input-sm(640px)art-gemini-input-lg - Children: ,
.art-gemini-input-border,.art-gemini-input-inner,.art-gemini-input-btn(textarea).art-gemini-input-field - Custom properties: ,
--art-gemini-input-width,--art-gemini-input-border-size--art-gemini-input-gradient
- Sizes:
- — Gemini风格的动画圆锥渐变边框输入框,带有发光光晕
art-gemini-input- 尺寸:(280px)、默认(450px)、
art-gemini-input-sm(640px)art-gemini-input-lg - 子元素:,
.art-gemini-input-border,.art-gemini-input-inner,.art-gemini-input-btn(textarea).art-gemini-input-field - 自定义属性:,
--art-gemini-input-width,--art-gemini-input-border-size--art-gemini-input-gradient
- 尺寸:
Usage Examples
使用示例
Basic Moon
基础月亮
html
<div class="art-moon"></div>html
<div class="art-moon"></div>Crescent Moon with Glow
带发光效果的新月
html
<div class="art-moon art-moon-crescent art-moon-glow"></div>html
<div class="art-moon art-moon-crescent art-moon-glow"></div>Sun with Animated Rays
带动画光线的太阳
html
<div class="art-sun art-sun-rays"></div>html
<div class="art-sun art-sun-rays"></div>Sunset Sun
日落太阳
html
<div class="art-sun art-sun-sunset art-sun-rays"></div>html
<div class="art-sun art-sun-sunset art-sun-rays"></div>Single Mountain
单个山峰
html
<div class="art-mountain"></div>html
<div class="art-mountain"></div>Mountain Range
山脉
html
<div class="art-mountain-range">
<div class="art-peak"></div>
<div class="art-peak"></div>
<div class="art-peak"></div>
</div>html
<div class="art-mountain-range">
<div class="art-peak"></div>
<div class="art-peak"></div>
<div class="art-peak"></div>
</div>Atom
原子
html
<div class="art-atom">
<div class="electron"></div>
<div class="electron-alpha"></div>
<div class="electron-omega"></div>
</div>html
<div class="art-atom">
<div class="electron"></div>
<div class="electron-alpha"></div>
<div class="electron-omega"></div>
</div>Eclipse
日食
html
<div class="art-eclipse">
<div class="layer layer-1"></div>
<div class="layer layer-2"></div>
<div class="layer layer-3"></div>
<div class="layer layer-4"></div>
<div class="layer layer-5"></div>
<div class="layer layer-6"></div>
</div>html
<div class="art-eclipse">
<div class="layer layer-1"></div>
<div class="layer layer-2"></div>
<div class="layer layer-3"></div>
<div class="layer layer-4"></div>
<div class="layer layer-5"></div>
<div class="layer layer-6"></div>
</div>Snowflakes
雪花
html
<!-- Simple dot snowflake -->
<div class="art-snowflake art-snowflake-fall"></div>
<!-- Unicode snowflake character -->
<div class="art-snowflake art-snowflake-unicode art-snowflake-fall"></div>html
<!-- 简单圆点雪花 -->
<div class="art-snowflake art-snowflake-fall"></div>
<!-- Unicode雪花字符 -->
<div class="art-snowflake art-snowflake-unicode art-snowflake-fall"></div>Plasma Ball (Interactive)
等离子球(交互式)
html
<div class="art-plasma-ball">
<input class="switcher" type="checkbox" />
<div class="glassball">
<div class="electrode"></div>
<div class="rays">
<div class="ray"><span></span><span></span><span></span></div>
<div class="ray bigwave"><span></span><span></span></div>
<div class="ray"><span></span><span></span><span></span></div>
<div class="ray bigwave"><span></span><span></span></div>
<div class="ray"><span></span><span></span><span></span></div>
</div>
<!-- repeat .rays block 5 more times for full coverage -->
</div>
<div class="base"><div></div><div></div><span></span></div>
<div class="switch"></div>
</div>html
<div class="art-plasma-ball">
<input class="switcher" type="checkbox" />
<div class="glassball">
<div class="electrode"></div>
<div class="rays">
<div class="ray"><span></span><span></span><span></span></div>
<div class="ray bigwave"><span></span><span></span></div>
<div class="ray"><span></span><span></span><span></span></div>
<div class="ray bigwave"><span></span><span></span></div>
<div class="ray"><span></span><span></span><span></span></div>
</div>
<!-- 重复.rays块5次以实现完整覆盖 -->
</div>
<div class="base"><div></div><div></div><span></span></div>
<div class="switch"></div>
</div>Cat Stargazer
观星猫咪
html
<div class="art-cat-stargazer">
<div class="moon"></div>
<div class="cat">
<div class="bubble"></div>
<div class="backpack"></div>
<div class="tail"></div>
<div class="body">
<div class="leg"></div>
<div class="paw"></div><div class="paw"></div>
</div>
<div class="ear"></div><div class="ear"></div>
<div class="head">
<div class="whisker"></div><div class="whisker"></div>
<div class="whisker"></div><div class="whisker"></div>
<div class="nose"></div>
<div class="eye"></div><div class="eye"></div>
</div>
</div>
</div>html
<div class="art-cat-stargazer">
<div class="moon"></div>
<div class="cat">
<div class="bubble"></div>
<div class="backpack"></div>
<div class="tail"></div>
<div class="body">
<div class="leg"></div>
<div class="paw"></div><div class="paw"></div>
</div>
<div class="ear"></div><div class="ear"></div>
<div class="head">
<div class="whisker"></div><div class="whisker"></div>
<div class="whisker"></div><div class="whisker"></div>
<div class="nose"></div>
<div class="eye"></div><div class="eye"></div>
</div>
</div>
</div>Color Spin
彩色旋转环
html
<div class="art-color-spin">
<ul>
<li style="--i:1"></li>
<li style="--i:2"></li>
<li style="--i:3"></li>
<li style="--i:4"></li>
</ul>
</div>html
<div class="art-color-spin">
<ul>
<li style="--i:1"></li>
<li style="--i:2"></li>
<li style="--i:3"></li>
<li style="--i:4"></li>
</ul>
</div>Synthwave Starfield
合成波星空
html
<div class="art-synthwave-starfield">
<div class="art-synthwave-starfield-sides art-synthwave-starfield-lefrig"></div>
<div class="art-synthwave-starfield-sides art-synthwave-starfield-topbot"></div>
<div class="art-synthwave-starfield-stars"></div>
<div class="art-synthwave-starfield-stars"></div>
</div>html
<div class="art-synthwave-starfield">
<div class="art-synthwave-starfield-sides art-synthwave-starfield-lefrig"></div>
<div class="art-synthwave-starfield-sides art-synthwave-starfield-topbot"></div>
<div class="art-synthwave-starfield-stars"></div>
<div class="art-synthwave-starfield-stars"></div>
</div>Circular Gallery
圆形画廊
html
<div class="art-circular-gallery">
<h1>Gallery</h1>
<div style="--i:1" data-title="Photo 1"><a href="#item1"><img src="photo1.jpg" alt="Photo 1" /></a></div>
<div style="--i:2" data-title="Photo 2"><a href="#item2"><img src="photo2.jpg" alt="Photo 2" /></a></div>
<!-- repeat for up to 20 items -->
</div>html
<div class="art-circular-gallery">
<h1>Gallery</h1>
<div style="--i:1" data-title="Photo 1"><a href="#item1"><img src="photo1.jpg" alt="Photo 1" /></a></div>
<div style="--i:2" data-title="Photo 2"><a href="#item2"><img src="photo2.jpg" alt="Photo 2" /></a></div>
<!-- 重复最多20个项目 -->
</div>Flower Animation
花朵动画
html
<div class="art-flower-animation">
<div class="night"></div>
<div class="flowers">
<div class="flower flower--1">
<div class="flower__leafs flower__leafs--1">
<div class="flower__leaf flower__leaf--1"></div>
<div class="flower__leaf flower__leaf--2"></div>
<div class="flower__leaf flower__leaf--3"></div>
<div class="flower__leaf flower__leaf--4"></div>
<div class="flower__white-circle"></div>
</div>
<div class="flower__line">
<div class="flower__line__leaf flower__line__leaf--1"></div>
<div class="flower__line__leaf flower__line__leaf--2"></div>
</div>
</div>
</div>
</div>html
<div class="art-flower-animation">
<div class="night"></div>
<div class="flowers">
<div class="flower flower--1">
<div class="flower__leafs flower__leafs--1">
<div class="flower__leaf flower__leaf--1"></div>
<div class="flower__leaf flower__leaf--2"></div>
<div class="flower__leaf flower__leaf--3"></div>
<div class="flower__leaf flower__leaf--4"></div>
<div class="flower__white-circle"></div>
</div>
<div class="flower__line">
<div class="flower__line__leaf flower__line__leaf--1"></div>
<div class="flower__line__leaf flower__line__leaf--2"></div>
</div>
</div>
</div>
</div>Gemini Input
Gemini输入框
html
<div class="art-gemini-input">
<div class="art-gemini-input-border"></div>
<div class="art-gemini-input-inner">
<button class="art-gemini-input-btn">+</button>
<textarea class="art-gemini-input-field" placeholder="Ask Gemini..."></textarea>
<button class="art-gemini-input-btn">▶</button>
</div>
</div>html
<div class="art-gemini-input">
<div class="art-gemini-input-border"></div>
<div class="art-gemini-input-inner">
<button class="art-gemini-input-btn">+</button>
<textarea class="art-gemini-input-field" placeholder="Ask Gemini..."></textarea>
<button class="art-gemini-input-btn">▶</button>
</div>
</div>CSSwitch (Game Controller)
CSSwitch(游戏手柄)
html
<div class="art-csswitch">
<div class="controller">
<div class="frame">
<div class="main-frame"><!-- controller frame --></div>
</div>
</div>
</div>html
<div class="art-csswitch">
<div class="controller">
<div class="frame">
<div class="main-frame"><!-- controller frame --></div>
</div>
</div>
</div>Snowball Preloader
雪球加载器
html
<div class="art-snowball-preloader">
<div class="art-snowball-preloader-outer-ring"></div>
<div class="art-snowball-preloader-inner-ring"></div>
<div class="art-snowball-preloader-track-cover"></div>
<div class="art-snowball-preloader-ball">
<div class="art-snowball-preloader-ball-texture"></div>
<div class="art-snowball-preloader-ball-outer-shadow"></div>
<div class="art-snowball-preloader-ball-inner-shadow"></div>
<div class="art-snowball-preloader-ball-side-shadows"></div>
</div>
</div>html
<div class="art-snowball-preloader">
<div class="art-snowball-preloader-outer-ring"></div>
<div class="art-snowball-preloader-inner-ring"></div>
<div class="art-snowball-preloader-track-cover"></div>
<div class="art-snowball-preloader-ball">
<div class="art-snowball-preloader-ball-texture"></div>
<div class="art-snowball-preloader-ball-outer-shadow"></div>
<div class="art-snowball-preloader-ball-inner-shadow"></div>
<div class="art-snowball-preloader-ball-side-shadows"></div>
</div>
</div>Custom Colors
自定义颜色
Override CSS custom properties to customize any art piece:
html
<!-- Blue moon -->
<div class="art-moon" style="--art-moon-color: oklch(80% 0.08 240);"></div>
<!-- Custom-sized sun -->
<div class="art-sun" style="--art-sun-size: 6rem;"></div>
<!-- Green atom -->
<div class="art-atom" style="--art-atom-color: #00ff88;">
<div class="electron"></div>
<div class="electron-alpha"></div>
<div class="electron-omega"></div>
</div>覆盖CSS自定义属性以修改任意艺术作品:
html
<!-- 蓝色月亮 -->
<div class="art-moon" style="--art-moon-color: oklch(80% 0.08 240);"></div>
<!-- 自定义尺寸太阳 -->
<div class="art-sun" style="--art-sun-size: 6rem;"></div>
<!-- 绿色原子 -->
<div class="art-atom" style="--art-atom-color: #00ff88;">
<div class="electron"></div>
<div class="electron-alpha"></div>
<div class="electron-omega"></div>
</div>Composing a Night Scene
组合夜景
html
<div style="background: oklch(15% 0.02 260); padding: 3rem; position: relative; overflow: hidden;">
<div class="art-moon art-moon-crescent art-moon-glow" style="position: absolute; top: 1rem; right: 2rem;"></div>
<div class="art-snowflake art-snowflake-fall" style="left: 20%; --art-snowflake-duration: 6s;"></div>
<div class="art-snowflake art-snowflake-fall" style="left: 50%; --art-snowflake-duration: 4s; animation-delay: 1s;"></div>
<div class="art-snowflake art-snowflake-fall" style="left: 80%; --art-snowflake-duration: 5s; animation-delay: 2s;"></div>
<div class="art-mountain-range" style="position: absolute; bottom: 0;">
<div class="art-peak"></div>
<div class="art-peak"></div>
<div class="art-peak"></div>
</div>
</div>html
<div style="background: oklch(15% 0.02 260); padding: 3rem; position: relative; overflow: hidden;">
<div class="art-moon art-moon-crescent art-moon-glow" style="position: absolute; top: 1rem; right: 2rem;"></div>
<div class="art-snowflake art-snowflake-fall" style="left: 20%; --art-snowflake-duration: 6s;"></div>
<div class="art-snowflake art-snowflake-fall" style="left: 50%; --art-snowflake-duration: 4s; animation-delay: 1s;"></div>
<div class="art-snowflake art-snowflake-fall" style="left: 80%; --art-snowflake-duration: 5s; animation-delay: 2s;"></div>
<div class="art-mountain-range" style="position: absolute; bottom: 0;">
<div class="art-peak"></div>
<div class="art-peak"></div>
<div class="art-peak"></div>
</div>
</div>CSS Architecture
CSS架构
- All classes prefixed with to avoid collisions
.art- - All custom properties prefixed with for namespacing
--art- - Uses to avoid cascade conflicts with other libraries
@layer css-art - Colors use OKLCH format for perceptual uniformity
- Animations use with
@keyframesprefixed namesart-
- 所有类均以为前缀,避免命名冲突
.art- - 所有自定义属性均以为前缀,实现命名空间隔离
--art- - 使用避免与其他库的样式层级冲突
@layer css-art - 颜色采用OKLCH格式,保证感知一致性
- 动画使用带前缀的
art-名称@keyframes
Importing Individual Art Pieces
导入单个艺术作品
css
/* Import only what you need */
@import "@duskmoon-dev/css-art/art";css
/* 仅导入所需内容 */
@import "@duskmoon-dev/css-art/art";Development Commands
开发命令
bash
undefinedbash
undefinedBuild css-art package
构建css-art包
bun run build:css-art
bun run build:css-art
Watch mode
监听模式
bun run dev:css-art
bun run dev:css-art
Unit tests
单元测试
cd packages/css-art && bun test tests/unit
undefinedcd packages/css-art && bun test tests/unit
undefinedBundle Size
包体积
- Unminified: ~50 KB
- Minified: ~36 KB
- 未压缩:约50 KB
- 已压缩:约36 KB