2016-03-31 14:17:09 +08:00
---
category: Components
2016-05-11 14:21:01 +08:00
type: Basic
2016-09-08 16:53:50 +08:00
title: 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
2016-08-20 11:58:31 +08:00
Meaningful vector graphics.
2015-06-17 19:48:17 +08:00
2016-08-20 11:58:31 +08:00
## Icons naming convention
2015-06-17 18:20:39 +08:00
2016-09-10 13:43:30 +08:00
We provide semantic name for every icon, and naming rules are as follows:
2015-06-17 18:20:39 +08:00
2016-08-20 11:58:31 +08:00
- Scanning line icon has the similar name with its solid one, but it's distinguished by `-o` , for example, `question-circle` (a full circle) and `question-circle-o` (an empty circle);
2015-06-17 18:20:39 +08:00
2016-08-20 11:58:31 +08:00
- Naming sequence: `[icon's name]-[shape, optional]-[Scanning line or not]-[direction, optional]`.
2015-06-17 18:20:39 +08:00
2016-09-10 13:43:30 +08:00
## How To Use
2015-09-24 11:20:26 +08:00
2016-08-20 11:58:31 +08:00
Use tag < Icon / > to create an icon and set its type in the type prop, for example:
2015-09-24 11:20:26 +08:00
2015-09-25 10:57:27 +08:00
```html
2015-12-07 16:32:44 +08:00
< Icon type = "link" / >
2015-09-24 11:20:26 +08:00
```
2015-06-17 18:20:39 +08:00
2016-08-20 11:58:31 +08:00
Finally, it will be rendered as follow:
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-08-20 11:58:31 +08:00
## Local deployment of icons font
2016-03-14 18:39:32 +08:00
2016-08-20 11:58:31 +08:00
By default, icon components uses [iconfont.cn ](http://iconfont.cn ), publicly available repository of a huge set of icons. In case you need to use a locally deployed version of the icon font, you can refer to [this example ](https://github.com/ant-design/antd-init/tree/master/examples/local-iconfont )。
2016-03-14 18:39:32 +08:00
2016-08-20 11:58:31 +08:00
## List of icons
2015-05-27 15:43:29 +08:00
2016-08-20 11:58:31 +08:00
> Click the icon and copy the code。
2015-12-07 16:32:44 +08:00
2016-09-10 14:00:57 +08:00
### Directional Icons
2015-06-10 18:13:49 +08:00
2016-03-07 11:58:14 +08:00
```__react
2016-05-27 11:48:08 +08:00
import IconSet from 'site/theme/template/IconSet';
2016-09-18 09:54:47 +08:00
ReactDOM.render(< IconSet className = "icons" catigory = "direction" / > , mountNode);
2016-03-07 11:58:14 +08:00
```
2015-06-05 20:26:41 +08:00
2016-09-10 14:00:57 +08:00
### Suggested Icons
2015-06-05 20:26:41 +08:00
2016-03-07 11:58:14 +08:00
```__react
2016-09-18 09:54:47 +08:00
ReactDOM.render(< IconSet className = "icons" catigory = "suggestion" / > , mountNode);
2016-03-07 11:58:14 +08:00
```
2015-06-05 20:26:41 +08:00
2016-09-10 14:00:57 +08:00
### Other Icons
2015-06-05 20:26:41 +08:00
2016-03-07 11:58:14 +08:00
```__react
2016-09-18 09:54:47 +08:00
ReactDOM.render(< IconSet className = "icons" catigory = "other" / > , mountNode);
2016-03-07 11:58:14 +08:00
```
2016-10-08 15:09:56 +08:00
## Props
| Property | Description | Type | Default |
|----------|------------------|------- |---------|
2016-10-30 12:43:59 +08:00
| type | Type of ant design icons | string | - |
| spin | Rotate icon with animation | boolean | false |
2016-10-08 15:09:56 +08:00
2015-06-05 20:26:41 +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 {
2016-09-10 14:00:57 +08:00
margin: 40px 0;
2015-06-07 17:18:14 +08:00
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-09-10 14:00:57 +08:00
width: 16.66%;
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;
2016-09-10 14:00:57 +08:00
color: #555 ;
2015-06-08 12:41:37 +08:00
transition: all 0.2s ease;
2015-06-08 23:41:11 +08:00
position: relative;
2016-09-10 14:00:57 +08:00
margin: 3px 0;
border-radius: 4px;
background-color: #fff ;
overflow: hidden;
padding: 10px 0 0 0;
2015-06-08 23:41:11 +08:00
}
2015-11-04 16:55:02 +08:00
ul.anticons-list li:hover {
2016-09-10 14:00:57 +08:00
background-color: #eaf8fe ;
2015-06-07 17:18:14 +08:00
}
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;
2016-09-10 14:00:57 +08:00
top: 0;
2015-06-09 12:11:43 +08:00
left: 0;
height: 100%;
width: 100%;
content: "Copied!";
text-align: center;
line-height: 110px;
2016-09-10 14:00:57 +08:00
color: #2db7f5 ;
2015-06-09 12:11:43 +08:00
transition: all 0.3s cubic-bezier(0.18, 0.89, 0.32, 1.28);
opacity: 0;
}
ul.anticons-list li.copied:after {
opacity: 1;
2016-09-10 14:00:57 +08:00
top: -10px;
2015-06-08 23:41:11 +08:00
}
2015-06-07 17:18:14 +08:00
.anticon {
2016-09-18 09:54:47 +08:00
font-size: 24px;
2015-06-15 20:29:51 +08:00
margin: 12px 0 16px;
2016-09-10 14:00:57 +08:00
transition: all .3s;
}
ul.anticons-list li:hover .anticon {
transform: scale(1.4);
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 >