mui框架遵循极简原则,在icon图标集上也是如此,mui仅集成了原生系统中最常用的图标;其次,mui中的图标并不是图片,而是字体,至于为什么使用字体图标而不是图片,相信web开发者多少都有所了解,简单列举几条:
多个图标字体合成一个字体文件,避免每张图片都需要联网请求;
字体可任意缩放,而图片放大会失真、缩小则浪费像素;
可通过css任意改变颜色、设置阴影及透明效果;
步骤1:
浏览器访问http://iconfont.cn/ 选择登录方式,可直接使用新浪微博账号或github账号登录;
步骤2:
搜索图标
- 选择自己喜欢的图标,点击,会添加到右上角的购物车中
- 同样的方式分别添加其他图标之后点击“存储为项目”,输入项目名字,例如“cui_icons”,点击“存储”按钮后,会跳转到项目管理页面
步骤3:
点击“下载到本地”按钮,会将合并后的字体文件及自动生成的css全部下载,如下:
步骤4:
修改iconfont.css
为保证和mui目录结构统一,建议将字体文件放在fonts目录下,这样我们需要修改@font-face下得url属性只兼容iOS和Android版本的话,我们仅需要ttf格式的字体即可,其它字体可以删除;同时,我们也仅需保留-webkit前缀语法,-moz前缀部分可以删除;
@font-face {font-family: "iconfont";
src: url('iconfont.eot?t=1462717210'); /* IE9*/
src: url('iconfont.eot?t=1462717210#iefix') format('embedded-opentype'), /* IE6-IE8 */
url('iconfont.woff?t=1462717210') format('woff'), /* chrome, firefox */
url('../fonts/iconfont.ttf?t=1462717210') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
url('iconfont.svg?t=1462717210#iconfont') format('svg'); /* iOS 4.1- */
}
.iconfont {
font-family:"iconfont" !important;
font-size:16px;
font-style:normal;
-webkit-font-smoothing: antialiased;
-webkit-text-stroke-width: 0.2px;
-moz-osx-font-smoothing: grayscale;
}
.icon-shezhi:before { content: "\e600"; }
.icon-bianji:before { content: "\e601"; }
步骤5:
集成mui
将iconfont.css及iconfont.ttf 两个文件分别拷贝到mui项目css及fonts目录下,然后即可在mui中引用刚生成的字体图标,我们以头部导航为例,演示怎么使用
自定义icon图标完整demo index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
<title></title>
<script src="js/mui.min.js"></script>
<link href="css/mui.min.css" rel="stylesheet"/>
<link rel="stylesheet" href="css/iconfont.css" />
</head>
<body>
<header class="mui-bar mui-bar-nav">
<a class="mui-icon iconfont icon-bianji mui-pull-left"></a>
<h1 class="mui-title">自定义字体图标</h1>
<a class="mui-icon iconfont icon-shezhi mui-pull-right"></a>
</header>
</body>
</html>