Card

卡片容器:header(headerExtraContent + title,或 header 覆盖) → cover(出血) → body(children,loading 时 Skeleton 占位 + actions 底部操作) → footer。bordered/shadows 控制视觉;string title 用 Typography.Title heading=6 渲染并经 aria-labelledby 关联。

设计文档

如何引入

import { Card, Card.Meta, Card.Group } from '@chenzy-design/svelte';

基础卡片

包含标题、headerExtraContent 与内容区的基础卡片。

Semi Design
chenzy-design 是一套对齐 Semi Design 的组件系统,帮助设计师与开发者更容易地打造高质量、体验一致、符合设计规范的 Web 应用。

简洁卡片

只设置内容区域,或配合 Card.Meta + bodyStyle 排布头像与操作。

chenzy-design 是一套对齐 Semi Design 的组件系统。

SD
Semi Doc

封面

通过 cover 设置封面,出血铺满卡片顶部。

卡片封面

边线和外边框

bordered 控制外边框,headerLine / footerLine 控制头/尾分隔线。

Semi Design
chenzy-design 是一套对齐 Semi Design 的组件系统,包含设计语言与一整套可复用的前端组件。

阴影

shadows 设置阴影时机:hover(悬停显示)、always(始终显示)。

SD
Semi Doc — hover

SD
Semi Doc — always

更灵活的内容展示

用 Card.Meta 承载 title / avatar / description,配合 footer 放置底部操作。

SD
Semi Doc
全面、易用、优质
chenzy-design 是一套对齐 Semi Design 的组件系统。

内部卡片

卡片内部可以嵌套其他卡片。

Card title
Inner Card title
Inner Card content
Inner Card title
Inner Card content

内置预加载

loading 为 true 时内容区显示骨架占位。




更丰富的预加载效果

结合 Skeleton 自定义头部、封面等更丰富的预加载。



卡片操作区

actions 位于内容区底部,以 12px 水平间距排布。

Semi Doc
全面、易用、优质

卡片组

CardGroup 中的卡片等间距排列,spacing 控制间距大小。

滑动调节 Card 间距

Card title
Card content
Card title
Card content
Card title
Card content
Card title
Card content
Card title
Card content
Card title
Card content
Card title
Card content
Card title
Card content

网格型卡片组

type='grid' 把卡片组设为网格型:卡片去圆角并以边框拼接。

Card title
Card content
Card title
Card content
Card title
Card content
Card title
Card content
Card title
Card content
Card title
Card content
Card title
Card content

API 参考

Card

Props

属性说明类型默认值
title标题;string 时用 Typography.Title heading=6 渲染并关联 aria-labelledbystring|Snippetundefined
headerExtraContentheader 右侧的额外内容Snippetundefined
header自定义头部,覆盖 title 与 headerExtraContentSnippetundefined
headerLineheader 与 body 间分隔线booleantrue
headerStyleheader 区内联样式透传stringundefined
cover顶部出血封面Snippetundefined
bodyStylebody 区内联样式透传stringundefined
actionsbody 底部操作组,以 12px 水平间距(Space)排布Snippetundefined
footer自定义页脚Snippetundefined
footerLinefooter 区上方分隔线booleanfalse
footerStylefooter 区内联样式透传stringundefined
bordered是否有外边框booleantrue
shadows阴影显示时机:hover 悬停显示、always 常显;不设则无阴影'hover'|'always'undefined
loadingbody 显示 Skeleton 占位(Title + Paragraph rows=3)booleanfalse
class根节点自定义类名stringundefined
style根节点自定义内联样式stringundefined
ariaLabel根节点 aria-label,表述该 Card 的作用stringundefined
children卡片正文Snippetundefined

Slots

名称说明
title标题(string 或 Snippet)
headerExtraContentheader 右侧额外内容
header自定义头部(覆盖 title/headerExtraContent)
cover封面
actionsbody 底部操作
footer页脚
children正文

Card.Meta

卡片元信息子组件(对齐 Semi Card.Meta):avatar(左)+ wrapper(title + description)。title/description 支持 string 或 Snippet。

Props

属性说明类型默认值
avatar左侧头像(右侧留 marginRight)Snippetundefined
title标题string|Snippetundefined
description描述string|Snippetundefined
class根节点自定义类名stringundefined
style根节点自定义内联样式stringundefined

Card.Group

卡片组子组件(对齐 Semi CardGroup),等价于 CardGroup 独立导出。基于 Space 成组排布多个 Card;type=grid 时卡片去圆角以 -1px 拼接。

Props

属性说明类型默认值
spacing卡片间距(网格型下忽略)number|number[]16
type网格型,覆盖 spacing'grid'undefined
ariaLabel组语义标签stringundefined
class根节点自定义类名stringundefined
style根节点自定义内联样式stringundefined

Accessibility

  • 有 title 时根 role=region;string title 经 useId 关联 aria-labelledby(无 ariaLabel 时);loading 时根 aria-busy;Skeleton 占位自带 role=status/aria-busy。

设计变量

变量默认值用法
--cd-card-bg var(--cd-color-card-bg-default)卡片根背景(组件消费)
--cd-card-body-color var(--cd-color-card-body-text)body 正文文字(组件消费)
--cd-card-border-color var(--cd-color-card-border)卡片外框/头尾分隔线颜色(组件消费)
--cd-card-desc-color var(--cd-color-card-description-text)Meta 描述文字(组件消费)
--cd-card-extra-color var(--cd-color-card-extra-text)header 右侧 extra 文字(组件消费)
--cd-card-title-color var(--cd-color-card-title-text)Meta 标题文字(组件消费)
--cd-color-card-bg-default var(--cd-color-bg-0)卡片背景颜色(Semi $color-card-bg-default)
--cd-color-card-body-text var(--cd-color-text-1)卡片正文文字颜色(Semi $color-card_body-text)
--cd-color-card-border var(--cd-color-border)卡片描边颜色(Semi $color-card-border)
--cd-color-card-description-text var(--cd-color-text-2)卡片描述文字颜色(Semi $color-card_description-text)