background-position解析

參考文章爲:http://www.cnblogs.com/huazaizai/archive/2010/11/03/1867907.htmlhtml

background-position屬性有三種方式能夠設置:spa

一、百分比 x% y%htm

二、位置對象

水平:left|center|right;blog

left至關於x爲0%   center 50%    right 100%圖片

垂直:top|center|bottom;it

top至關於y爲0%   center 50%    bottom 100%io

三、數字class

10px 20px;   -30px -40px;容器

 

說明: 
設置或檢索對象的背景圖像位置。必須先指定 background-image 屬性。
該屬性定位不受對象的補丁屬性( padding )設置影響。
默認值爲: 0% 0% 。此時背景圖片將被定位於對象不包括補丁( padding )的內容區域的左上角。
若是隻指定了一個值,該值將用於橫座標。縱座標將默認爲 50% 。若是指定了兩個值,第二個值將用於縱座標。
若是設置值爲 right center ,由於 right 做爲橫座標值將會覆蓋 center 值,因此背景圖片將被居右定位。
對應的腳本特性爲 backgroundPosition。

 

當設置的值爲數字的時候:

  好比爲20px 30px,那麼就是背景圖片從0,0點向右移動20px,而後再向下移動30px。

  好比爲-20px  -30px,那麼就是背景圖片從0,0,點向左移動20px,而後再向上移動30px。

 

若是設置的爲百分比的時候:

  等同於x:(容器(container)的寬度 - 背景圖片的寬度)*x百分比,超出的部分隱藏
  等同於y:(容器(container)的高度 - 背景圖片的高度)*y百分比,超出的部分隱藏

  (1)好比容器的寬度爲1000px,高度爲540px;背景圖片的寬度爲269px,高度爲276px。background-position爲20%  30%。

  那麼x爲(1000-269)*20%=146px(小數部分是四捨五入)

  y爲(540-276)*30%=79px

  最後就是背景圖片從0,0點向右移動146px,而後再向下移動79px

  (2)好比容器的寬度爲1000px,高度爲540px;背景圖片的寬度爲269px,高度爲276px。background-position爲-20%  -30%。

  那麼x爲(1000-269)*(-20%)=-146px(小數部分是四捨五入)

  y爲(540-276)*(-30%)=-79px

  最後就是背景圖片從0,0點向左移動146px,而後再向上移動79px

 

若是設置的爲位置(left top等)

  先把位置轉換成百分比,而後再按照百分比的方式計算

相關文章
相關標籤/搜索