Card 卡片

如果项目中使用的是 1.x 版本的基础组件(@alifd/next),请在左侧导航顶部切换组件版本。

安装方法

  1. 在命令行中执行以下命令npm install @icedesign/base@latest -S

Guide

一个通用的卡片组件。

何时使用

当一个模块的同类信息不能自然形成区块感,可借助 Card 组件将信息整合,帮助界面信息模块感更强。

API

卡片

参数说明类型默认值
prefix样式的品牌前缀String'next-'
title卡片的标题ReactNode-
subTitle卡片的副标题ReactNode-
titlePrefixLine是否显示标题的前缀线Booleantrue
titleBottomLine是否显示标题栏的下划线Booleantrue
bodyHeight内容区域的固定高度String/Number120
extra标题区域的用户自定义内容ReactNode-
className自定义样式String-

代码示例

基本

最简单的用法。

Card 卡片 - 图1

查看源码在线预览

  1. import { Card } from "@icedesign/base";
  2. ReactDOM.render(
  3. <Card
  4. style={{ width: 300 }}
  5. title="阿里老黄历"
  6. subTitle="没品位"
  7. extra="Link"
  8. language="en-us"
  9. >
  10. <h3>Card title</h3>
  11. <p>Card content</p>
  12. <p>Card content</p>
  13. <p>Card content</p>
  14. <p>Card content</p>
  15. <p>Card content</p>
  16. </Card>,
  17. mountNode
  18. );

自定义内容高度

可以通过 bodyHeight 属性自定义内容区的高度。例如取值为 auto 的时候会默认关闭卡片的收缩效果。

Card 卡片 - 图2

查看源码在线预览

  1. import { Card } from "@icedesign/base";
  2. ReactDOM.render(
  3. <div>
  4. <Card
  5. style={{ width: 300 }}
  6. title="阿里老黄历"
  7. subTitle="没品位"
  8. bodyHeight="auto"
  9. >
  10. <p>Card content</p>
  11. <p>Card content</p>
  12. <p>Card content</p>
  13. <p>Card content</p>
  14. <p>Card content</p>
  15. </Card>
  16. </div>,
  17. mountNode
  18. );

自定义卡片样式

如果 title 属性不传入任何值,则默认会去除整个头部区域。如果默认的卡片样式不能满足您的需求,除了通过 Fusion 配置平台修改,还可以通过传入自定义样式修改。

Card 卡片 - 图3

查看源码在线预览

  1. import { Card } from "@icedesign/base";
  2. const cardStyle = {
  3. padding: 0,
  4. boxShadow: "none"
  5. };
  6. ReactDOM.render(
  7. <Card style={cardStyle} bodyHeight="auto">
  8. <img
  9. src="https://img.alicdn.com/tfs/TB1FNIOSFXXXXaWXXXXXXXXXXXX-260-188.png"
  10. alt="father day"
  11. />
  12. <div className="custom-card">
  13. <h3>父亲节</h3>
  14. <p>Father's Day</p>
  15. </div>
  16. </Card>,
  17. mountNode
  18. );
  1. .custom-card {
  2. text-align: center;
  3. padding: 10px 16px;
  4. }
  5. .custom-card p {
  6. color: #999;
  7. }

自定义标题样式

可以通过设置 titleBottomLine 属性为 false 关闭显示头部区域的底部边框线。可以通过设置 titlePrefixLine 属性为 false 关闭显示标题前的前缀线。

Card 卡片 - 图4

查看源码在线预览

  1. import { Card } from "@icedesign/base";
  2. ReactDOM.render(
  3. <div>
  4. <Card
  5. style={{ width: 300 }}
  6. title="Title"
  7. subTitle="Here is added words"
  8. titlePrefixLine={false}
  9. extra={<a href="#">Link &gt;</a>}
  10. >
  11. Custom Content
  12. </Card>
  13. <br />
  14. <br />
  15. <Card
  16. style={{ width: 300 }}
  17. title="Title"
  18. subTitle="Here is added words"
  19. titleBottomLine={false}
  20. extra={<a href="#">Link &gt;</a>}
  21. >
  22. Custom Content
  23. </Card>
  24. <br />
  25. <br />
  26. <Card
  27. style={{ width: 300 }}
  28. title={<i>Title</i>}
  29. subTitle={<i>Sub</i>}
  30. titlePrefixLine={false}
  31. titleBottomLine={false}
  32. extra={<a href="#">Link &gt;</a>}
  33. >
  34. Custom Content
  35. </Card>
  36. </div>,
  37. mountNode
  38. );

相关区块

Card 卡片 - 图5

暂无相关区块