ant-design/components/icon/index.md

126 lines
4.7 KiB
Markdown
Raw Normal View History

2016-03-31 14:17:09 +08:00
---
category: Components
chinese: 图标
2016-05-11 14:21:01 +08:00
type: Basic
2016-03-31 14:17:09 +08:00
english: Icon
2016-07-26 19:45:55 +08:00
toc: false
2016-03-31 14:17:09 +08:00
---
2015-05-27 15:43:29 +08:00
2015-06-17 19:48:17 +08:00
有含义的矢量图形,每一个图标打倒一个敌人。
2015-06-17 18:20:39 +08:00
## 图标的命名规范
2015-12-07 16:32:44 +08:00
我们为每个图标赋予了语义化的命名,命名规则如下:
2015-06-17 18:20:39 +08:00
2015-07-10 17:17:58 +08:00
- 实心和描线图标保持同名,用 `-o` 来区分,比如 `question-circle`(实心) 和 `question-circle-o`(描线)
2015-06-17 18:20:39 +08:00
2015-11-11 17:44:16 +08:00
- 命名顺序:`[icon名]-[形状可选]-[描线与否]-[方向可选]`。
2015-06-17 18:20:39 +08:00
2015-12-07 16:32:44 +08:00
## 如何使用
2015-12-07 16:32:44 +08:00
使用 `<Icon />` 标签声明组件,指定图标对应的 type 属性,示例代码如下:
```html
2015-12-07 16:32:44 +08:00
<Icon type="link" />
```
2015-06-17 18:20:39 +08:00
2015-12-07 16:32:44 +08:00
最终会渲染为:
2015-06-07 14:01:59 +08:00
```html
2015-12-07 16:32:44 +08:00
<i class="anticon anticon-${type}"></i>
2015-06-07 14:01:59 +08:00
```
2016-03-14 18:39:32 +08:00
## 本地部署
图标组件使用 [iconfont.cn](http://iconfont.cn),默认公网可访问。如需本地部署,可参考 [示例](https://github.com/ant-design/antd-init/tree/master/examples/local-iconfont)。
2015-05-27 15:43:29 +08:00
## 图标列表
2015-12-07 16:32:44 +08:00
> 点击图标复制代码。
2015-06-08 22:42:36 +08:00
### 一. 方向性图标
2015-06-10 18:13:49 +08:00
2016-03-07 11:58:14 +08:00
```__react
import IconSet from 'site/theme/template/IconSet';
const icons1 = ['step-backward', 'step-forward', 'fast-backward', 'fast-forward', 'shrink', 'arrow-salt', 'down', 'up', 'left', 'right', 'caret-down', 'caret-up', 'caret-left', 'caret-right', 'caret-circle-right', 'caret-circle-left', 'caret-circle-o-right', 'caret-circle-o-left', 'circle-right', 'circle-left', 'circle-o-right', 'circle-o-left', 'double-right', 'double-left', 'verticle-right', 'verticle-left', 'forward', 'backward', 'rollback', 'enter', 'retweet', 'swap', 'swap-left', 'swap-right', 'arrow-right', 'arrow-up', 'arrow-down', 'arrow-left', 'play-circle', 'play-circle-o', 'circle-up', 'circle-down', 'circle-o-up', 'circle-o-down', 'caret-circle-o-up', 'caret-circle-o-down', 'caret-circle-up', 'caret-circle-down'];
2016-03-07 11:58:14 +08:00
ReactDOM.render(<IconSet className="icons" icons={icons1} key="icons1" />, mountNode);
```
2015-06-08 22:42:36 +08:00
### 二. 提示建议性图标
2016-03-07 11:58:14 +08:00
```__react
const icons2 = ['question', 'question-circle-o', 'question-circle', 'plus', 'plus-circle-o', 'plus-circle', 'pause', 'pause-circle-o', 'pause-circle', 'minus', 'minus-circle-o', 'minus-circle', 'plus-square', 'minus-square', 'info', 'info-circle-o', 'info-circle', 'exclamation', 'exclamation-circle-o', 'exclamation-circle', 'cross', 'cross-circle-o', 'cross-circle', 'check', 'check-circle-o', 'check-circle', 'clock-circle-o', 'clock-circle'];
ReactDOM.render(<IconSet className="icons" icons={icons2} key="icons2" />, mountNode);
```
2015-06-08 22:42:36 +08:00
### 三. 网站通用图标
2016-03-07 11:58:14 +08:00
```__react
const icons3 = ['lock', 'unlock', 'android', 'apple', 'area-chart', 'bar-chart', 'bars', 'book', 'calendar', 'cloud', 'cloud-download', 'code', 'copy', 'credit-card', 'delete', 'desktop', 'download', 'edit', 'ellipsis', 'file', 'file-text', 'file-unknown', 'file-pdf','file-excel', 'file-jpg', 'file-ppt', 'folder', 'folder-open', 'github', 'hdd', 'frown', 'meh', 'inbox', 'laptop', 'appstore-o', 'appstore', 'line-chart', 'link', 'logout', 'mail', 'menu-fold', 'menu-unfold', 'mobile', 'notification', 'paper-clip', 'picture', 'pie-chart', 'poweroff', 'reload', 'search', 'setting', 'share-alt', 'shopping-cart', 'smile', 'tablet', 'tag', 'tags', 'to-top', 'upload', 'user', 'video-camera', 'windows', 'ie', 'chrome', 'home', 'loading', 'smile-circle', 'meh-circle', 'frown-circle', 'tags-o', 'tag-o', 'cloud-upload-o', 'cloud-download-o', 'cloud-upload', 'cloud-o', 'star-o', 'star', 'heart-o', 'heart', 'environment', 'environment-o', 'eye', 'eye-o', 'camera', 'camera-o', 'aliwangwang', 'aliwangwang-o', 'save', 'team', 'solution', 'phone', 'filter', 'exception', 'export', 'customerservice', 'qrcode', 'scan', 'like', 'dislike', 'message', 'pay-circle', 'pay-circle-o', 'calculator', 'pushpin', 'pushpin-o'];
2016-03-07 11:58:14 +08:00
ReactDOM.render(<IconSet className="icons" icons={icons3} key="icons3" />, mountNode);
```
2015-11-04 16:55:02 +08:00
<style>
2016-03-07 11:58:14 +08:00
.markdown .icons {
width: 100%;
}
2015-06-07 17:18:14 +08:00
ul.anticons-list {
margin: 20px 0;
list-style: none;
2015-09-14 15:19:44 +08:00
overflow: hidden;
2015-06-07 17:18:14 +08:00
}
2015-06-08 12:39:35 +08:00
ul.anticons-list li {
2015-06-07 17:18:14 +08:00
float: left;
2016-05-11 00:24:00 +08:00
margin: 6px 6px 6px 0;
width: 145px;
2015-06-07 17:18:14 +08:00
text-align: center;
list-style: none;
cursor: pointer;
2016-05-11 00:24:00 +08:00
height: 100px;
2015-06-08 12:39:35 +08:00
color: #5C6B77;
2015-06-08 12:41:37 +08:00
transition: all 0.2s ease;
2015-06-08 23:41:11 +08:00
position: relative;
2015-11-16 14:56:47 +08:00
padding-top: 10px;
2015-06-08 23:41:11 +08:00
}
2015-11-04 16:55:02 +08:00
ul.anticons-list li:hover {
2015-06-08 22:42:36 +08:00
background-color: #4BB8FF;
2015-06-08 12:39:35 +08:00
color: #fff;
2015-06-07 17:18:14 +08:00
border-radius: 4px;
}
2015-11-04 16:55:02 +08:00
ul.anticons-list li.copied:hover {
2015-06-09 12:11:43 +08:00
color: rgba(255,255,255,0.2);
}
ul.anticons-list li:after {
position: absolute;
top: 10px;
left: 0;
height: 100%;
width: 100%;
content: "Copied!";
text-align: center;
line-height: 110px;
color: #fff;
transition: all 0.3s cubic-bezier(0.18, 0.89, 0.32, 1.28);
opacity: 0;
}
ul.anticons-list li.copied:after {
opacity: 1;
top: 0;
2015-06-08 23:41:11 +08:00
}
2015-06-07 17:18:14 +08:00
.anticon {
2015-06-09 12:11:43 +08:00
font-size: 26px;
2015-06-15 20:29:51 +08:00
margin: 12px 0 16px;
2015-06-07 17:18:14 +08:00
}
.anticon-class {
display: block;
text-align: center;
2015-06-09 12:11:43 +08:00
transform: scale(0.83);
2015-06-07 17:18:14 +08:00
font-family: Consolas;
2016-05-11 00:24:00 +08:00
white-space: nowrap;
2015-06-07 17:18:14 +08:00
}
2016-04-08 15:29:04 +08:00
</style>