精品免费在线观看-精品欧美-精品欧美成人bd高清在线观看-精品欧美高清不卡在线-精品欧美日韩一区二区

17站長網

17站長網 首頁 編程教程 Css Sprite教程 查看內容

Css Sprite教程

Css Sprite尺寸不吻合時怎么辦?

1. 當有一個不吻合頁面元素的尺寸時

有時候圖片并不都是這么完美的適合你所需要的場景,比如美工給了一套比較大的Css Sprite:


編程之家

實際上你并不需要這么大的圖標,比如你需要圖標的地方大概是55px * 50px:

<!DOCTYPE html>
<html>
	<head>
    <meta charset="UTF-8">
    <title>CSS Sprites</title>
    <style>
	  /* 清除默認樣式 */
      * { padding: 0; margin: 0; }
      
      /* 這段代碼是為了居中顯示,不是重點,看不懂的話可以無視 */
      body {
	      height: 100vh;
	      display: flex;
	      align-items: center;
	      justify-content: center;
	  }
      
      .sprite {
        /* 設置寬高和邊框 */
        width: 55px;
        height: 50px;
        border: 1px solid black;

        /* 背景圖地址設置為雪碧圖的位置 */
        background-image: url('http://img.mukewang.com/wiki/5ed9a97108da9a2e04440371.jpg');
        
        /* 禁止背景圖重復 */
        background-repeat: no-repeat;

        /* 令背景圖顯示在正確的位置 */
        background-position: left bottom;
      }
  	</style>
	</head>
	<body>
    <div class="sprite"></div>
  </body>
</html>

運行結果:

編程之家

可以看出來此時由于圖標遠比盒子大,所以只顯示出了一個角,正所謂小荷才露尖尖角。

2. 解決方案

聰明的同學早就猜到了我們肯定有一個能夠控制背景圖大小的語法:

background-size:圖片尺寸;

@H_240_301@
  • 圖片尺寸可以是cover或contain這種關鍵字

  • 也可以是具體的寬高,如:background-size: 100px 50px;

  • 還可以是百分比,如:background-size: 100% 50%;

此時我們需要把背景圖的大小調到一個恰好能夠適應盒子寬高的這么一個數值:

<!DOCTYPE html>
<html>
	<head>
    <meta charset="UTF-8">
    <title>CSS Sprites</title>
    <style>
      /* 清除默認樣式 */
      * { padding: 0; margin: 0; }
      
      /* 這段代碼是為了居中顯示,不是重點,看不懂的話可以無視 */
      body {
	      height: 100vh;
	      display: flex;
	      align-items: center;
	      justify-content: center;
	  }
      
      .sprite {
        /* 設置寬高和邊框 */
        width: 55px;
        height: 50px;
        border: 1px solid black;

        /* 背景圖地址設置為雪碧圖的位置 */
        background-image: url('http://img.mukewang.com/wiki/5ed9a97108da9a2e04440371.jpg');
        
        /* 背景圖尺寸 */
        background-size: 205px 170px;

        /* 令背景圖顯示在正確的位置 */
        background-position: left bottom;
      }
  	</style>
	</head>
	<body>
    <div class="sprite"></div>
  </body>
</html>

于是就可以把圖標完美的呈現出來了:

編程之家

如果Css Sprite過大可以調小背景尺寸,反之亦然。

3. 條形圖可以使用的語法

假如Css Sprite上面所有的圖標都一樣大的話,建議做成條形圖:


編程之家


因為條形圖可以有個簡便的方法:

background-size: cover;

@H_240_301@
  • cover的意思就是用寬高最小的那部分(上圖就是高比較小)恰好能填充滿整個背景區域。

<!DOCTYPE html>
<html>
	<head>
    <meta charset="UTF-8">
    <title>CSS Sprites</title>
    <style>
      /* 清除默認樣式 */
      * { padding: 0; margin: 0; }
      
      /* 這段代碼是為了居中顯示,不是重點,看不懂的話可以無視 */
      body {
	      height: 100vh;
	      display: flex;
	      align-items: center;
	      justify-content: center;
	  }
      
      .sprite {
        /* 設置寬高和邊框 */
        width: 55px;
        height: 52px;
        border: 1px solid black;

        /* 背景圖地址設置為雪碧圖的位置 */
        background-image: url('http:////img.mukewang.com/wiki/5ed9ca5a0973e0d804450108.jpg');
        
        /* 背景圖尺寸 */
        background-size: cover;

        /* 令背景圖顯示在正確的位置 */
        background-position: left;
      }
  	</style>
  </head>
	<body>
    <div class="sprite"></div>
  </body>
</html>

運行結果:

編程之家

可以看到結果幾乎是一樣的,但是這種方式就不用我們一點點的去調尺寸,看究竟是哪個尺寸最合適。而且在調試位置的時候我們只需要關心一個方向的位置就可以了,方便了許多。

4. 小結

本小節我們學習了如何改變背景圖片的尺寸,學會了這些基礎的CSS用法,你就已經可以在網頁中使用Css Sprite來顯示靜態圖案了。

但我相信你肯定不會滿足于靜態這兩個字,那么接下來就一起來學習一下動畫的知識吧!

返回頂部
主站蜘蛛池模板: 国产理论视频在线观看 | 亚洲免费精品视频 | 看国产一级毛片 | 一区二区免费视频观看 | 久久精品亚洲精品国产欧美 | 久色网| 国产中文99视频在线观看 | 国产看片一区二区三区 | 欧美操片 | 国产成人免费高清在线观看 | 欧美成人禁片在线观看网址 | 久久国产精品久久久 | 免费在线观影网站 | 国产成人午夜精品免费视频 | 1024手机在线精品观看 | 99自拍视频在线观看 | 秀人网福利视频在线观看 | 污污网站在线免费观看 | 成人午夜小视频手机在线看 | 欧美综合精品一区二区三区 | 国产卡一卡二卡三 | 综合精品一区 | 九九黄色大片 | 国产美女精品视频 | 国产黄色片免费看 | 2019国内精品久久久久久 | zoofilia杂交videos新另类 | 午夜精品视频在线观看 | 被公侵犯肉体中文字幕一区二区 | 免费超级淫片日本高清视频 | 夜夜爱成人免费网站 | 免费一级毛片视频 | 国产人妖视频 | 免费看黄网站在线 | 三上悠亚magnet | 亚洲自偷精品视频自拍 | 国产老女人 | 国产专区日韩精品欧美色 | 国产91页 | 欧美视频在线播放观看免费福利资源 | 亚洲第一区精品日韩在线播放 |