用过EasyUI的朋友都知道,大部分组件都有一个iconCls属性,用于显示一个图标。但是EasyUI自带图标数量少、不美观,于是想到了使用Font Awesome来更换和拓展这些图标。

先看看EasyUI的图标用法,下面定义了一个LinkButton。

<a class="easyui-linkbutton" data-options="iconCls:'icon-add',plain:true">添加</a>

其中 iconCls 为 icon-add,实质是指定了一个名为 icon-add 的CSS类,这些CSS都位于themes目录下的icon.css文件中,都很简单,就是将图标作为背景显示,比如icon-add定义如下,显示了一个“加号”图标:

.icon-add{
background:url('icons/edit_add.png') no-repeat center center;
}

用FireBug之类的浏览器调试工具,查看最终生成的图标部分的DOM如下,包含了两个CSS类,l-btn-icon 和 icon-add,其中icon-add就是上面定义的 iconCls,而l-btn-icon,我把它们称为图标基类,每个组件有各自的图标基类,比如:LinkButton的图标基类是l-btn-icon,Panel的是panel-icon,Menu的是menu-icon,Tabs的是tabs-icon。

<span class="l-btn-icon icon-add"> </span>

Font Awesome是一套图标字体库,官方网址:http://fontawesome.io/,下载后,在页面引入css/font-awesome.min.css即可,最简单的一个示例如下,即可显示一个“加号”图标

<span class="fa fa-plus"></span>

上例中也包含了两个CSS类,fa 和 fa-plus,同样,可以把 fa 看着基类,定义了一些基本样式,特别重要的是把字体定义为FontAwesome,源码如下:

.fa {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}

fa-plus的源码如下,利用before伪类在标签中插入Unicode,而这些Unicode,在应用了 FontAwesome字体后,就会显示为相应的图标。

.fa-plus:before {
content: "\f067";
}

为了在EasyUI中使用FontAwesome字体图标,我们就要参照fa来重写上面提到的EasyUI各组件的图标基类,一般网页都要引用自己的CSS文件,把下面这些代码写在你自己的CSS文件里就可以了,我已经将必要的地方加了!important,所以这个CSS文件和easyui.css的先后顺序就无所谓了。还有些组件没有包含在下面,你可以如法炮制。

.l-btn-icon,.panel-icon,.menu-icon,.tabs-icon {
font-family:FontAwesome;
font-size:14px !important;
line-height:normal !important;
text-rendering:auto;
-webkit-font-smoothing:antialiased;
-moz-osx-font-smoothing:grayscale;
color:#6699cc;
text-align:center;
}
.tabs-icon {
font-size:16px !important;
font-weight:normal;
}

EasyUI的iconCls属性,设置为FontAwesome的相应类即可,比如:

<a class="easyui-linkbutton" data-options="iconCls:'fa-plus',plain:true">添加</a>

最后看几个示例:

<a id="add" class="easyui-linkbutton" data-options="iconCls:'fa-plus',plain:true">添加</a>
<a id="batchDelete" class="easyui-linkbutton" data-options="iconCls:'fa-trash',plain:true">批量删除</a>
<a id="batchEdit" class="easyui-menubutton" data-options="menu:'#batchEditMenu',iconCls:'fa-th',plain:true">批量操作</a>
<a id="superSearch" class="easyui-linkbutton" data-options="iconCls:'fa-search',plain:true">组合查询</a>
<a id="filter" class="easyui-menubutton" data-options="menu:'#filterMenu',iconCls:'fa-filter',plain:true">筛选</a>
<a id="sort" class="easyui-menubutton" data-options="menu:'#sortMenu',iconCls:'fa-sort',plain:true">排序</a>
<a id="refresh" class="easyui-linkbutton" data-options="iconCls:'fa-refresh',plain:true">刷新</a>
<a id="help" class="easyui-linkbutton" data-options="iconCls:'fa-question-circle-o',plain:true">帮助</a>
$('#editDialog').dialog({
//...
iconCls:'fa-pencil',
//...
});

使用Font Awesome替换EasyUI的图标的更多相关文章

  1. 使用Font Awesome替换你的网站图标

    http://fortawesome.github.io/Font-Awesome/whats-new/ 使用Font Awesome替换你的网站图标 ******************IE7BUG ...

  2. 使用webfont为easyui扩充图标

    目前回到pc端开发,开始用了easyui这个框架.重拾easyui后感觉这个框架用的很多技术太古老,页面风格也太控件化.单从图标一项来说吧,这种花花绿绿的图标用户一看都傻了眼,同时整个框架就提供了那么 ...

  3. Innosetup打包自动下载.net framework 动态库及替换卸载程序图标.

    在使用了一段时间微软自带的安装包打包工具后,总感觉不太顺利,于是便想着找一种更简单稳定的打包工具,这类工具其实还不少,最终经过各种考量,我们选择了 InnoSetup , 该工具是一个完全免费的Win ...

  4. Font Awesome-用CSS实现各种小图标icon

    Font Awesome为您提供可缩放的矢量图标,您可以使用CSS所提供的所有特性对它们进行更改,包括:大小.颜色.阴影或者其它任何支持的效果.官网:http://fontawesome.dashga ...

  5. 使用Font Awesome替换你的网站图标(icons 图标)

    http://www.thinkcmf.com/font/icons/ 第一次使用 Font Awesome 发现相当的爽呀!它的图标很全,能够帮你节约时间去找图片.下面就来一起学习吧: 1: 去官方 ...

  6. jquery easyui添加图标扩展

    easyui中有很多通过iconCls="icon-reload"这样的属性引入小图标显示,当然我们也可以自己添加自己的小图标. 方式:1.我们可以在jquery easyui的文 ...

  7. 如何将 Font Awesome 转成 PNG 图标 详细教程 含源代码

    最近因为项目上需要用到这个字体图标,但是它里面的许多也不能完全满足项目需要,因此就考虑将这个图标导出,然后自己再添加一些其他图标使用 搜索了些解决方案,如:http://www.oschina.net ...

  8. easyui 放大镜图标

    iconCls:search 对应的 easyui的查询图标忒丑 想用放大镜图标 iconCls:zoom 找半天找到放大镜图标的 然后去icon.css文件中查 发现这个样式就叫zoom.

  9. 2019-2-27-如何替换一个-exe-的图标

    title author date CreateTime categories 如何替换一个 exe 的图标 lindexi 2019-02-27 20:33:16 +0800 2019-2-27 2 ...

随机推荐

  1. Spring IoC总结

    Spring 复习 1.Spring IoC 1.1 基本概念 1.1.1 DIP(Dependency Inversion Principle) 字面意思依赖反转原则,即调用某个类的构造器创建对象时 ...

  2. Tango with django 1.9 中文——2.准备工作

    在正式开始写代码之前,设置好开发环境是非常重要的.你要确保所有必须的组件都已安装好.本章将概述五个你需要了解的关键组件的设置和使用.清单如下: 使用命令行 Python Python包管理器pip和虚 ...

  3. 【HTB系列】靶机Querier的渗透测试

    出品|MS08067实验室(www.ms08067.com) 本文作者:大方子(Ms08067实验室核心成员) 总结与反思: 1.收集信息要全面 2.用snmp-check检查snmp目标是否开启服务 ...

  4. spring-Cloud初步依赖

    <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot ...

  5. 关于python中的[::-1],[:,:,::-1]的反转理解

    其实就是单纯的关于反转,我们只需要记住每一个列表的中间有两个冒号: 即[a: b:c],意思是从a到b,间隔是c,因为经常省略c,所以经常看到[a:b]. 一.在一维数据中的反转 import num ...

  6. mysql内一些可以布尔盲注的查询语句

              一.left() 首先需要 use security;  这个数据库,然后进入之后再使用查询语句: 此时再使用: select left(database(),1)='s';    ...

  7. numpy函数的使用

    NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库. 数据分析三剑客:Numpy,Pandas ...

  8. FreeBSD 的xfce 终端动态标题不显示问题解决了:

    tcsh配置,home目录创建.tcshrc, 写入以下配置 alias h history 25 alias j jobs -l alias la ls -aF alias lf ls -FA al ...

  9. .net 程序员的centos命令总结

    1,ssh相关 在初始化一台云服务器的时候,第一件事情就是去把该关的门都关上,首先第一关就是禁用root登录,禁用密码登录,顺便改一下远程登录端口,让登录都通过ssh密钥对来进行,阿里云里有密钥对管理 ...

  10. python中类的魔法方法

    __xx__这种方法,在Python中均称为魔法方法 1.__init__(self) 该方法的作用是初始化对象 在创建对象时被默认调用,不需要手动调节 self参数不需要开发者传递,解释器会自动将创 ...