Jade 图标是 MDI 图标库中一个非常经典且用途广泛的图标,它通常代表 “宝石”、“财富”、“成功”、“品质” 等概念。

教程概览
- Jade 图标简介
- 如何在网页中使用 Jade 图标 (HTML/CSS)
- 如何在 React 中使用 Jade 图标
- 如何在 Vue.js 中使用 Jade 图标
- 如何根据需求选择 Jade 的不同样式
- 常见问题与最佳实践
Jade 图标简介
在 MDI 中,Jade 图标有几个常见的名称和变体:
- 核心名称:
jade - 关联名称:
gem: 更通用的“宝石”图标,与jade几乎相同。diamond: 钻石样式,形状略有不同。
- 核心变体:
jade: 标准的、带有切面效果的绿色宝石。jade-box: 一个简单的绿色方块。jade-circle: 一个绿色的圆形。
图标含义与用途:
- 金融/经济: 代表财富、投资、价值。
- 游戏/成就: 代表稀有物品、装备、成就点数。
- 设计/品质: 代表高品质、精工细作、设计感。
- 自然/健康: 代表玉石、自然、纯净。
在网页中使用 Jade 图标 (HTML/CSS)
这是最直接的使用方式,适合任何静态或动态的网页项目。
步骤 1: 引入 MDI 的 CSS 文件
在你的 HTML 文件的 <head> 标签中,添加 MDI 的 CDN 链接。

<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">MDI Jade 图标示例</title>
<!-- 引入 Material Design Icons 的 CSS -->
<link href="https://cdn.jsdelivr.net/npm/@mdi/font@7.2.96/css/materialdesignicons.min.css" rel="stylesheet">
</head>
<body>
<!-- 你的内容 -->
</body>
</html>
步骤 2: 使用 Jade 图标
MDI 使用 <i> 标签和特定的 CSS 类来显示图标。
- 基本用法:
mdi类 +mdi-图标名类
<!-- 显示一个标准的 Jade 图标 --> <i class="mdi mdi-jade"></i> <!-- 显示一个 Jade Box 图标 --> <i class="mdi mdi-jade-box"></i> <!-- 显示一个 Jade Circle 图标 --> <i class="mdi mdi-jade-circle"></i>
步骤 3: 自定义图标样式 (CSS)
你可以通过 CSS 来改变图标的大小和颜色。
<style>
/* 设置一个较大的 Jade 图标 */
.large-jade {
font-size: 48px;
color: #00a86b; /* 自定义一个绿色 */
}
/* 设置一个中等大小的 Jade Box 图标 */
.medium-jade-box {
font-size: 32px;
color: #4CAF50; /* Material Design 的绿色 */
}
/* 设置一个小的 Jade Circle 图标,并添加旋转动画 */
.small-jade-circle {
font-size: 24px;
color: #8BC34A;
animation: spin 2s linear infinite;
}
@keyframes spin {
from { transform: rotate(0deg); }
to { transform: rotate(360deg); }
}
</style>
<body>
<h1>标准 Jade 图标</h1>
<i class="mdi mdi-jade"></i>
<h1>自定义 Jade 图标</h1>
<i class="mdi mdi-jade large-jade"></i>
<i class="mdi mdi-jade-box medium-jade-box"></i>
<i class="mdi mdi-jade-circle small-jade-circle"></i>
</body>
在 React 中使用 Jade 图标
在 React 项目中,推荐使用官方的 React 包,它更易于管理和集成。
步骤 1: 安装 @mdi/react 包
npm install @mdi/react # 或者 yarn add @mdi/react
步骤 2: 导入并使用 Jade 图标
import React from 'react';
import { MdJade, MdJadeBox, MdJadeCircle } from '@mdi/react'; // 注意:导入时使用 Md 前缀
import '@mdi/font/css/materialdesignicons.css'; // 引入 CSS
function App() {
return (
<div>
<h1>React 中的 Jade 图标</h1>
{/* 使用 path 属性来渲染图标 */}
<MdJade
path={MdJade}
size={24}
color="#00a86b"
/>
<MdJadeBox
path={MdJadeBox}
size={48}
color="#4CAF50"
/>
<MdJadeCircle
path={MdJadeCircle}
size={32}
color="#8BC34A"
/>
</div>
);
}
export default App;
注意: @mdi/react 的导入方式是 Md + 图标名,并且需要通过 path 属性传递图标的路径数据。

在 Vue.js 中使用 Jade 图标
在 Vue 项目中,你可以使用官方的 Vue 组件。
步骤 1: 安装 @mdi/vue 包
npm install @mdi/vue # 或者 yarn add @mdi/vue
步骤 2: 在组件中使用 Jade 图标
<template>
<div>
<h1>Vue 中的 Jade 图标</h1>
<!-- 使用 v-bind 动态绑定属性 -->
<mdi-jade
:path="pathJade"
size="24"
color="#00a86b"
/>
<mdi-jade-box
:path="pathJadeBox"
size="48"
color="#4CAF50"
/>
<mdi-jade-circle
:path="pathJadeCircle"
size="32"
color="#8BC34A"
/>
</div>
</template>
<script>
import { MdJade, MdJadeBox, MdJadeCircle } from '@mdi/js'; // 从 @mdi/js 导入路径
import { MdiJade, MdiJadeBox, MdiJadeCircle } from '@mdi/vue'; // 从 @mdi/vue 导入组件
export default {
components: {
MdiJade,
MdiJadeBox,
MdiJadeCircle,
},
data() {
return {
pathJade: MdJade,
pathJadeBox: MdJadeBox,
pathJadeCircle: MdJadeCircle,
};
},
};
</script>
<style>
/* 你也可以在这里添加样式 */
</style>
如何根据需求选择 Jade 的不同样式
| 图标名 (Class/Component) | 外观 | 适用场景 |
|---|---|---|
mdi-jade / MdJade |
带切面的绿色宝石,最经典、最具识别度。 | 首选,适用于大多数需要表达“价值”、“成就”、“高品质”的场景,如游戏装备、金融产品徽章、设计奖项等。 |
mdi-jade-box / MdiJadeBox |
纯色绿色方块。 | 当你需要一个更简洁、更几何化的图形时,作为列表项的标记,或者代表一个“宝箱”或“资源块”。 |
mdi-jade-circle / MdiJadeCircle |
纯色绿色圆形。 | 当需要一个柔和、友好的图标时,代表一个“健康点数”、“能量核心”或一个简单的成功状态。 |
选择建议:
- 不确定用哪个? 用
mdi-jade,它最通用。 - 需要极简设计? 考虑
mdi-jade-box或mdi-jade-circle。 - 需要强调“宝石”的物理特性?
mdi-jade是最佳选择。
常见问题与最佳实践
Q: 为什么我的图标不显示? A: 请检查以下几点:
- CSS 是否引入? 确保在 HTML 的
<head>中或 React/Vue 项目中正确引入了 MDI 的 CSS 文件。 - 类名或组件名是否正确? 确保没有拼写错误,
mdi-jade而不是mdi-jades。 - CDN 是否可用? 如果使用 CDN,检查网络连接或尝试更换 CDN 链接。
Q: 如何改变图标的颜色?
A: 通过 CSS 的 color 属性来控制,图标本质上是字体,所以用 color 是最简单有效的方法,如上文示例所示,可以直接在 <i> 标签上使用 style="color: red;",或者在 CSS 中定义类。
Q: 图标可以旋转或添加动画吗?
A: 可以,由于图标是 :before 伪元素生成的,你可以通过 CSS 对其父元素(通常是 <i> 标签)进行变换和动画。
/* 旋转动画示例 */
.rotating-icon {
animation: rotate 2s linear infinite;
}
@keyframes rotate {
from { transform: rotate(0deg); }
to { transform: rotate(360deg); }
}
/* 在 HTML 中使用 */
<i class="mdi mdi-jade rotating-icon"></i>
最佳实践:
- 保持一致性: 在一个项目中,尽量统一使用一种引入方式(全部使用
@mdi/react)。 - 使用语义化类名: 为图标包裹一个
<span>并添加有意义的类名,<span class="icon-gem"><i class="mdi mdi-jade"></i></span>,便于后期维护。 - 响应式设计: 使用
font-size或transform: scale()来让图标在不同屏幕尺寸下自适应,而不是使用固定的px值。
希望这个详细的教程能帮助你熟练地在项目中使用 MDI 的 Jade 图标!
