easyui之自定义字体图标(鼠标覆盖时切换颜色)
项目要求是自定义字体图标,使用easyui框架结构,众所周知easyui强功能弱样式,字体图标其实就是一张图片。要达到切换图标颜色的效果,要么就是有两套图,使用js控制。但是我这个人比较懒,不喜欢做复杂的事情。“投机取巧”也造就了我痛苦的过程。
之前项目使用的框架是bootstrap,恰好和easyui反过来了强样式弱功能,样式用得我是春风得意,现在要换框架,也有自定义图标,心想着换汤不换药嘛,就用老办法使用bootstrap那一套,测试了一下没问题,心里还窃喜自己是个天才呢。后来才发现这个方法谷歌老大认,火狐兄弟不认哪,它就只是显示一个小小小小点,还提什么切换颜色简直天方夜谭。我滴个亲娘,差点泪奔。
好嘛我认了,用人家的东西肯定得按人家的规矩来,所以我挨个把字体图片按照16*16的标准做好了,也都显示了,现在就轮到图标颜色的切换上了,这可把我头都抓破了。首先在博客上看到张大神的思路,使用CSS3的新技能过滤器 “filter” ,哎呀妈这是个好东西,有了它还用什么js哟。我就按照这个思路来开始做。但是不完全一致,这里只是使用了主要的两个属性,因为我们项目中有多个地方都是使用的linkbutton,且大小不一,布局也是使用的vue进行渲染,牵一发而动全身,所以无法区别对待。
.l-btn-icon-left .l-btn-icon{
-webkit-filter: drop-shadow(30px 0);
filter: drop-shadow(30px 0);
left: -28px;
}
用了这个属性过后问题又来了,可以达到投影来切换的效果,火狐兄弟没问题,谷歌这回不开心了,但是原因不是不支持这个属性,而是需要投影两次(我组长发明的思路!!),谷歌才认。也就是鼠标覆盖前投影一次,鼠标覆盖后再次投影
一次,以此来达到想要的效果。(我自定义的图标颜色是黑色的,需要图标最原始的状态是白色,鼠标覆盖时显示黑色)。完整的css如下: 重中之重的样式,否则谷歌老铁不认的,它只认识你鼠标没有覆盖前投影的状态,只要你覆盖过,图标颜色就会回到最开始的状态,显然不合逻辑。
.l-btn:hover, .l-btn-left:hover {
background: #fff;
color: #000;
border-radius: 0;
.l-btn-icon-left .l-btn-icon{
-webkit-filter: drop-shadow(30px 0);
filter: drop-shadow(30px 0); //投影的距离是按照项目中图标位置来酌情调整的。
left: -28px;
}
}
.l-btn-icon-left .l-btn-icon{
-webkit-filter: drop-shadow(30px 0);
filter: drop-shadow(30px 0);
left: -28px;
}
终于结束了我的厄运,只不过这个想法确实很新颖,省事。
easyui之自定义字体图标(鼠标覆盖时切换颜色)的更多相关文章
- CSS学习笔记----CSS3自定义字体图标
响应式网页字体图标 作者:大漠 日期:2014-01-28 点击:3220 @font-face Responsive 本文由大漠根据Jason的<Responsive Webfont Icon ...
- fontawesome-iconpicker 自定义字体图标选择器
官网地址:https://farbelous.io/fontawesome-iconpicker/ 头部文件引入 <!--本地地址--> <link href="../cs ...
- 微信小程序中使用iconfont/font-awesome等自定义字体图标
小程序不能识别外部字体文件,但是转换成Base64就可以使用字体图标了. 以阿里巴巴的iconfont为例 1.下载图标 先去官网下载喜欢的图标==> 下载解压后的文件夹==> 2.在线转 ...
- layui 自定义字体图标 扩展
layui的图标取自于阿里巴巴的矢量图标库 Iconfont,同样的,这篇教程也是基于Iconfont进行扩展. 第一步,通过浏览器打开 http://iconfont.cn/ ,访问阿里巴巴矢量图标 ...
- 在webstorm开发微信小程序之使用阿里自定义字体图标
1.下载阿里图标,解压出来之后有个.css文件 然后复制这css里面的所有代码 2.新建一个wxss文件,例如我新建的就是iconfont.wxss,然后把刚才复制的所有代码,复制到这个文件里面去. ...
- EasyUI portal自定义小图标,不是用js方式加载
<script src="~/Scripts/jquery.portal.js"></script> <script> $(function ( ...
- 【学习笔记01】:hover为DIV添加鼠标悬停时改变颜色的效果
:hover所有主流浏览器都支持(IE6.0以下支持不好,以后再学习用Javascript来实现悬停效果) 这是一个绿色底白色Icon的搜索按钮
- element-ui 中 table 鼠标悬停时背景颜色修改
样式穿透: /deep/ .el-table tbody tr:hover>td { background-color: #颜色 }
- Android怎么使用字体图标 自定义FontTextView字体图标控件-- 使用方法
首先我想说明一下字体图标的好处,最大的好处就是自适应了,而且是使用TextView 不用去切图,是矢量图 灵活调用 第一步我要说明一下一般字体图标的来源,我这里使用的是 --阿里巴巴矢量图标库 -网 ...
随机推荐
- Flask中Mysql数据库的常见操作
from flask import Flask,render_template #导入第三方链接库sql点金术 from flask_sqlalchemy import SQLAlchemy #建立对 ...
- Eclipse安装教程 ——史上最详细安装Java &Python教程说明
参考链接:https://blog.csdn.net/zichen_ziqi/article/details/73995755
- Markdown超链接及脚注
Markdown链接及脚注 [时间:2017-02] [状态:Open] [关键词:markdown,标记语言,页内链接,超链接,脚注] 本文内容来自Markdown 11种基本语法,仅对其中我不熟悉 ...
- graph slam BACK END 相关技术资料收集
学习SLAM首推2个网站: 1. WIKI上的SLAM介绍与资源总结:http://en.wikipedia.org/wiki/Simultaneous_localization_and_mappin ...
- LwIP Application Developers Manual11---Initializing lwIP
1.前言 2.Initialization for simple lwIP 查看doc/rawapi.txt来获得更多官方信息 #if NO_SYS /* Network interface vari ...
- k64 datasheet学习笔记45---10/100-Mbps Ethernet MAC(ENET)之功能描述
1.前言 本文是对K64 datasheet 之ENET部分的功能描述,将对每个部分进行详细说明 2.Ethernet MAC frame formats MAC帧组成格式 (1)7字节前导码:如按最 ...
- 武汉倍特威视系统有限公司 --- 安全帽识别|烟火识别|智慧工地|BVS智能视频分析
武汉倍特威视系统有限公司 --- 安全帽识别|烟火识别|智慧工地|BVS智能视频分析 http://www.betvsys.com/
- ES6学习笔记五(promise异步)
知识点1:rosolve是执行下一步then() // Promise { let ajax=function(){ console.log('执行2'); return new Promise(fu ...
- better-scroll和swiper使用中的坑
better-scroll 1.我的 better-scroll 初始化了, 但是没法滚动. 按照文档使用后,发现可以原生滚动,但是不能弹性滑动,后面发现是最外层容器没给设置固定高度 ,设置固定 ...
- arx对正在操作的文件进行保存
//对正在操作的文件进行保存 STDMETHODIMP CTHDatabase::Save(void) { // TODO: 在此添加实现代码 Acad::ErrorStatus es ; try{ ...