@property 规则演示 - 自定义属性类型与动画
注册带类型的 CSS 自定义属性,观察其如何支持过渡动画和继承效果。
UD5工具箱
-- 开头,如 --my-color。添加后变量会出现在下方列表并可实时编辑。
这是一张示例卡片,展示了CSS变量的综合应用效果。修改左侧的颜色、间距、圆角、阴影等变量,观察卡片的变化。
标签 CSS变量:root {
--primary-color: #4f46e5;
--secondary-color: #10b981;
--bg-color: #f8fafc;
--text-color: #1e293b;
--border-color: #e2e8f0;
--font-size-base: 16px;
--heading-font-size: 24px;
--spacing-unit: 8px;
--border-radius: 8px;
--box-shadow: 0 4px 6px rgba(0,0,0,0.1);
}
:root 中即可使用这些CSS变量。
-- 开头的属性名,通过 var() 函数引用。它们定义在CSS规则中,遵循层叠和继承规则,可以在运行时通过JavaScript动态修改,极大提升了样式管理的灵活性和可维护性。例如:--main-color: #4f46e5; 定义一个变量,使用时 color: var(--main-color);。
var() 函数接受两个参数:var(--变量名, 后备值)。当CSS变量未定义或无效时,浏览器会使用后备值。例如:color: var(--unknown-color, #333); 如果 --unknown-color 不存在,则使用 #333。后备值本身也可以嵌套 var(),如 var(--a, var(--b, red)),提供多层兜底。
element.style.setProperty('--var-name', value) 设置变量,使用 getComputedStyle(element).getPropertyValue('--var-name') 读取变量。在 :root 上设置可实现全局修改:document.documentElement.style.setProperty('--primary-color', '#ff0000');。这正是本工具的实现原理——修改变量值后,所有引用该变量的元素自动更新。
:root 中定义的变量全局可用;在特定选择器中定义的变量仅在该选择器及其后代中生效。例如,在 .card { --card-padding: 20px; } 中定义的变量只能在 .card 及其子元素中使用。子元素可以覆盖父级变量值,形成局部作用域。这种机制非常适合组件级别的样式隔离。
transition 和 animation。当CSS变量的值改变时,如果该属性支持过渡(如颜色、尺寸、阴影等),浏览器会平滑过渡。例如本工具的预览区中,所有元素设置了 transition: all 0.25s ease,变量变化时你能看到流畅的过渡动画。但需注意,并非所有属性都能过渡(如display),且变量值的类型需要可插值。
注册带类型的 CSS 自定义属性,观察其如何支持过渡动画和继承效果。
选择多张图片或纯色叠加,切换所有CSS混合模式并实时预览图层效果。
应用 contain 的各种值(layout, paint, size),直观对比开启前后渲染和布局的变化。
调节光源角度、颜色和距离,生成凹凸柔和的新拟态UI元素CSS盒阴影代码,潮流设计工具。
通过勾选元素关系(子孙、兄弟)、属性、伪类等条件,自动生成精确的CSS选择器字符串。
提取 HTML 中所有内联 style,智能合并相同样式生成 class,并替换为类名以减小体积。
浏览并一键复制常见CSS动画(跳动、淡入、滑动等)的@keyframes代码。
搜索CSS属性和选择器,展示在主流浏览器的支持版本和全局使用率百分比。
并列播放所有CSS内置缓动函数(ease, linear等)的动画效果,方便对比选择。
选择触发位置、箭头方向与样式,生成轻量悬停提示框代码。
创建带有向下箭头和自定选项风格的自定义选择框HTML+CSS代码。
通过滑块和开关调整 Flex 容器和子项的所有 CSS 属性,实时观察布局变化,理解弹性盒子。
调节宽度、颜色、条纹动画等参数,实时预览并生成进度条HTML/CSS。
上传图片并设置层位置和滚动速度,生成纯 CSS 的多层视差滚动背景代码。
编写带有伪类的选择器,实时高亮匹配的HTML元素,探索现代CSS选择器的能力。
输入文本,滑块调节letter-spacing和word-spacing,实时显示效果并复制CSS。
提取HTML中内联style属性或嵌入式style标签,转变为独立CSS规则,辅助样式重构。
拖拽顶点或选择预定义形状,可视生成CSS clip-path多边形、圆形、椭圆等,实时预览并复制代码。
粘贴网页上的 HTML 表格代码,自动提取数据并转换为 JSON 或 CSV 格式下载。
拖拽两控制点精细微调CSS `cubic-bezier()` 曲线并对比预设函数效果。
为页面上使用CSS Grid的元素显示网格线和名称,辅助布局开发和调试。
通过可视化控件定制滚动条轨道、滑块、按钮等伪元素样式,即时预览并复制生成代码。
勾选或调整所需的重置元素(盒模型、边距等),生成自定义CSS Reset片段,确保跨浏览器一致性。
搜索CSS属性,显示其在主流浏览器的支持范围和前缀需求,快速避免踩坑。
在页面上叠加可拖拽的半透明网格线,辅助网格布局对齐。
设置文字、速度和方向,生成使用 CSS 动画实现的滚动横幅代码。
选择背景图片(或使用占位色),配置标题、副标题和按钮,生成Hero区域代码。
将 JSON 数组或对象渲染为可交互的 HTML 表格,支持嵌套展开、列排序和搜索。
将 CSS Grid 容器和项目的属性以图形化卡片展示,点击查看具体效果和代码。
列出所有标准 CSS 光标值(pointer, grab, zoom-in 等),鼠标悬停实时查看对应光标样式并复制代码。