来源:http://www.zhangxinxu.com/wordpress/?p=5267,分享收藏

使用镂空图片,通过CSS改变颜色,达到图片切换的效果,可以同过背景图,然后改变背景色,从而达到图片换色的目的,在换色的过程中可以过渡

下面是使用背景色

        <style type="text/css">
li{display:inline-block;} .icon{display:block;height:140px;width: 140px;background-color:#;overflow: hidden;transition:all .5s;}
.icon{
background-image: url(img/test1.png);
}
.icon2{background-position: -140px;}
.icon3{background-position: -280px;}
.icon4{background-position: -420px;}
.icon:hover{background-color: #ccc;}
</style>
</head>
<body>
<ul id='test'>
<li>
<i class="icon icon1"></i>
</li>
<li>
<i class="icon icon2"></i>
</li>
<li>
<i class="icon icon3"></i>
</li>
<li>
<i class="icon icon4"></i>
</li>
</ul>
</body>

可以达到换色的效果,但是在初始加载的时候会有下面这个问题加载完成前会是这样

后面张大神提出用伪类选择器,content,加载图片解决这个问题,下面代码:

        <style type="text/css">
li{display:inline-block;}
.icon:after{content: url(img/test1.png);position:relative;cursor: pointer;transition:all .5s;}
.icon{display:block;height:140px;width: 140px;background-color:#;overflow: hidden;}
.icon2:after{top:-140px;}
.icon3:after{top:-280px;}
.icon4:after{top:-420px;}
.icon:hover{background-color: #ccc;}
</style>
</head>
<body>
<ul id='test'>
<li>
<i class="icon icon1"></i>
</li>
<li>
<i class="icon icon2"></i>
</li>
<li>
<i class="icon icon3"></i>
</li>
<li>
<i class="icon icon4"></i>
</li>
</ul>
</body>

就不会出现这样的问题

代码地址

CSS镂空图片处理的更多相关文章

  1. 用.net在画出镂空图片

    最近的一个项目需要用到这个东西,冥思苦想了好几天.还是在同事的帮助下,完成此项难题,希望能够帮助以后的博友们 ! 废话不多说,先看看效果图吧. 首先写一下讲一下思路,首先画一张图,当你的背景,然后在图 ...

  2. Django调用JS、CSS、图片等静态文件

    zz 在下面的例子中,我们将media作为静态(CSS\JS\图片文件)文件的目录 方法一. 1.首先在settings.py文件中自定义参数 STATIC_PATH=’./media’ .(意为当前 ...

  3. Bootstrap css背景图片的设置

    一. 网页中添加图片的方式有两种 一种是:通过<img>标签直接插入到html中 另一种是:通过css背景属性添加 居中方法:水平居中的text-align:center 和 margin ...

  4. 使用CSS将图片转换成黑白(灰色、置灰)z转

    小tip: 使用CSS将图片转换成黑白(灰色.置灰) by zhangxinxu from http://www.zhangxinxu.com 本文地址:http://www.zhangxinxu.c ...

  5. Spring MVC程序中得到静态资源文件css,js,图片

    转载自:http://www.blogjava.net/fiele/archive/2014/08/24/417283.html 用 Spring MVC 开发应用程序,对于初学者有一个很头疼的问题, ...

  6. css背景图片拉伸 以及100% 满屏显示

    如何用css背景图片拉伸 以及100% 满屏显示呢?这个问题听起来似乎很简单.但是很遗憾的告诉大家.不是我们想的那么简单. 比如一个容器(body,div,span)中设定一个背景.这个背景的长宽值在 ...

  7. 网站性能优化之CSS无图片技术:三角形

    1.使用CSS无图片技术,可以总结得到以下三个优点: 减少请求资源的大小: 减少http的请求个数: 提高可维护性. 一.CSS无图片技术,微博中有哪些实际应用呢? 通过上面的展示,我们可以看到,无图 ...

  8. mvc伪静态<四> 伪静态后静态页面或者引用的css和图片失效

    引用的css和图片失效的解决办法 把样式引用文件的相对路径改成绝对路径就可以了 比如原先的引用路径为:<link href="~/Content/css/style.css" ...

  9. CSS实现图片快速等比例缩放,效果佳

    初学者在实现图片等比例缩放,通常会使用js编写逻辑来控制高或宽,达到自动缩放的效果. 这里提供一种纯CSS的图片缩放功能,请看代码: <style type="text/css&quo ...

随机推荐

  1. org.apache.commons.lang3.Validate

    Validates.notBlank(user.getName(), "必须提供name");

  2. 在Docker中运行crontab

    在把自己的项目通过Docker进行打包时,由于项目中用到了crontab,不过使用到的基础镜像python:3.6-slim并没有安装这项服务,记录下在镜像中安装和配置crontab的过程. Dock ...

  3. 类名.fromObject(obj)静态方法

  4. Drupal 7 建站学习手记(五):QuickTabs模块内的元素无法溢出的问题

    背景 项目要求站点首页放Views生成的区块,而且要求有很多其它链接. Views生成的区块默认的很多其它链接仅仅能选在列表上方和下方 下图是默认在上方的样式图: 为了美观.我将很多其它链接上移了若干 ...

  5. pycharm -- 导入主题(theme) and 修改背景颜色(护眼色)

    前情提要 众所周知,随着python语言的不断流行,越来越多的程序员开始用python来开发自己的项目以及产品. pycharm作为一款流行的IDE,被越来越多的程序员所接受和使用. 尽管pychar ...

  6. Oracle 补丁体系 及 opatch 工具 介绍

    一. CPU(Critical Patch Update) 一个CPU内包含了对多个安全漏洞的修复,并且也包括相应必需的非安全漏洞的补丁.CPU是累积型的,只要安装最新发布的CPU即可,其中包括之前发 ...

  7. es 之 Symbol

    ES5 的对象属性名都是字符串,这容易造成属性名的冲突.比如,你使用了一个他人提供的对象,但又想为这个对象添加新的方法(mixin 模式),新方法的名字就有可能与现有方法产生冲突.如果有一种机制,保证 ...

  8. PHP双引号的隐患

    PHP很多语法特性会让攻击者有机可乘,例如PHP会检测双引号中的变量.执行如下代码: function test() { echo "abc"; } echo "${@t ...

  9. yum运行时提示被锁住了解决办法

    1.当大家用linux的yum时,是不是经常会遇到下面的情况Loaded plugins: fastestmirrorExisting lock /var/run/yum.pid: another c ...

  10. Angular 4 投影

    1.创建工程 ng new demo4 2. 创建子组件 ng g component child 3.子组件html定义 <div class="wrapper"> ...