vue中 css 雪碧图应用及数字切换demo
1. CSS Sprites一般只能使用到固定大小的盒子(box)里,这样才能够遮挡住不应该看到的部分。
2.使用css雪碧图的优点:
  • 利用CSS Sprites能很好地减少网页的http请求,从而大大的提高页面的性能。
  • CSS Sprites能减少图片的字节。
  • 更换风格方便,只需要在一张或少张图片上修改图片的颜色或样式,整个网页的风格就可以改变。维护起来更加方便。

3.主要代码:

<template>
<div class="total">
<div class="content">
<span class="number" v-for="item in numberObj" :class="item.classObj"></span>
</div>
</div>
</template> <script type="text/babel">
export default {
data() {
return {
total: '12451',
numberObj: [
{
classObj: ''
},
{
classObj: ''
},
{
classObj: ''
},
{
classObj: ''
},
{
classObj: ''
},
{
classObj: ''
},
{
classObj: ''
},
{
classObj: ''
},
{
classObj: ''
}
]
};
},
       mounted() {
    setTimeout(function () {
    this.total = 12451;
    }, 1000 * 30);
    },
    watch: {
    'total'(newVal, oldVal){
    this.total = newVal;
    this.refresh();
    }
    },
    methods: {
    refresh: function () {
    let length = this.total.toString().length;     for (let i = 1; i <= length; i++) {
    let _number = parseInt(this.total % Math.pow(10, i) / Math.pow(10, (i - 1)));
    this.numberObj[9-i].classObj = ['position_' + _number, 'highLight'];
    }
    }
    }
    };
</script>
.number {
flex: none;
margin: 0 2px;
height: 34px;
width: 21px;
background-image: url("/image/number/css-sprites-x1.png");
@media only screen and (min-device-pixel-ratio: 2) {
background-image: url("/image/number/css-sprites-x2.png");
} &.highLight{
background-image: url("/image/number/css-sprites-highlight-x1.png");
@media only screen and (min-device-pixel-ratio: 2) {
background-image: url("/image/number/css-sprites-highlight-x2.png");
}
} background-position: 48px 0; &.position_0 {
background-position: -1px 0; }
&.position_1 {
background-position: -22px 0; }
&.position_2 {
background-position: -43px 0; }
&.position_3 {
background-position: -70px 0; }
&.position_4 {
background-position: -97px 0; }
&.position_5 {
background-position: 129px 0; }
&.position_6 {
background-position: 102px 0; }
&.position_7 {
background-position: 72px 0; }
&.position_9 {
background-position: 21px 0; }
}

效果图:

 

css雪碧图实现数字切换的更多相关文章

  1. CSS Sprite、CSS雪碧图应用实例

    CSS Sprites技术被国内一些人称为CSS雪碧图,其实就是把网页中一些背景图片整合到一张图片文件中,再利用CSS的“background-image”,“background- repeat”, ...

  2. 使用compass自动合并css雪碧图(css sprite)

    本文转载自: 使用compass自动合并css雪碧图(css sprite)

  3. Css雪碧图

    Css雪碧图: CSS雪碧 即CSS Sprite,也有人叫它CSS精灵,是一种CSS图像合并技术,该方法是将小图标和背景图像合并到一张图片上,然后利用css的背景定位来显示需要显示的图片部分. 原理 ...

  4. 前端优化:css雪碧图实践应用详解

    一 为什么需要使用雪碧图 二CSS雪碧图原理及应用 前端是接近用户体验的一个项目组成部分,合适的优化能够大大减少网页响应时间,合理的资源加载自然成为了工作中的要务,现在就结合实例讲解到底什么是css雪 ...

  5. CSS雪碧图(精灵图)使用

    1:CSS雪碧图:CSS雪碧图 即 CSS Sprites,也有人叫它CSS精灵图. 2:雪碧图的由来:一个网站的页面需要大量的小图片或者小图标,但是大量的图片如果放在服务器上,每次当打开网站并且向服 ...

  6. css雪碧图(精灵图)与字体图标的介绍以及对比

    css雪碧图(精灵图)与字体图标的介绍以及对比 设想一个实际场景:在一个页面为了展示,我们放置了很多独立的小图片,浏览器在显示页面的时候,就需要向服务器就会发送很多请求,来获取并加载这些小图片,但是这 ...

  7. css 雪碧图 及jquery定位代码

    无意间发现了一个很神奇的事情,就是 鼠标悬停在图片上方会切换,起初以为图标是单独插入的.但发现居然是一张完整的图片. 一万只草泥马在心中奔腾.这是怎么实现的? 后来询问得知,这是css精灵技术(spr ...

  8. css sprite,css雪碧图生成工具V3.0更新

    V3.0主要改进 1.增加了单独添加单张图片以及删除单张图片的功能 2.增加了生成.sprite文件用以保存雪碧图信息 3.增加了打开.sprite文件功能 什么是css sprite CSS spr ...

  9. CSS雪碧图自动生成软件

    下载地址 http://www.99css.com/1524/ 包含详细的下载地址.下载步骤以及使用教程 亮点:自动合成雪碧图+自动生成雪碧图background-position代码 简单过程 下载 ...

随机推荐

  1. substr()、substring()、slice()

    substr(start,length) start(必选)开始位置的下标 可为负数-1即为倒数第一个字符以此类推 0为第一个字母下标 length长度(可选)如果省略该参数则默认到最后一位 var ...

  2. Spring---数据缓存Cache

    1.Spring缓存支持 1.1.Spring定义了org.springframework.cache.CacheManager类.org.springframework.cache.Cache类接口 ...

  3. JavaScript之BOM+DOM

    BOM 浏览器对象模型, 用于把浏览器相关的组件封装为对象进行操作. BOM是包含了DOM的. window对象 弹出框相关 确认: 取消: 与打开关闭window有关的方法 定时器相关 暂停选老婆 ...

  4. 回顾Servlet及SpringMVC

    什么是Servlet? Servlet是运行在Web服务器或应用服务器上的程序,它是作为来自Web浏览器或其他HTTP客户端的请求和HTTP服务器上的数据库 或应用程序之间的中间层. servlet架 ...

  5. springMVC使用map接收入参 + mybatis使用map 传入查询参数

    测试例子: controllel层 ,使用map接收请求参数,通过Debug可以看到,请求中的参数的值都是字符串形式,如果将这个接收参数的map直接传入service,mybatis接收参数时会报错, ...

  6. LOJ 6436 「PKUSC2018」神仙的游戏——思路+卷积

    题目:https://loj.ac/problem/6436 看题解才会. 有长为 i 的 border ,就是有长为 n-i 的循环节. 考虑如果 x 位置上是 0 . y 位置上是 1 ,那么长度 ...

  7. Oil Deposits( hdu1241

    http://acm.hust.edu.cn/vjudge/contest/view.action?cid=82828#problem/L Oil Deposits Time Limit:1000MS ...

  8. 测开之路五十七:实现runner和测试报告

    准备测试用例 from fox.case import Casefrom src import Calculator class TestCalculator(Case): def setUp(sel ...

  9. Jmeter登录中的cookie问题

    Jmeter中发送多个http请求,由于后面的请求需要登录后才能获取到数据,所以前面先要发送登录请求. 登录时会写cookie到本地,后面的请求中会读取cookie中的JSESSIONID,若后面的请 ...

  10. Flask Session ,pymysql ,wtforms组件 虚拟virtualenv venv

    https://www.cnblogs.com/wupeiqi/articles/5713330.html session def create_app(): print() app=Flask(__ ...