默認狀況下元素的背景是指元素border(包含border)之內的區域。css
在CSS3中可用使用background-clip
改變元素背景區域。瀏覽器
指定背景在被應用元素上的繪製區域。元素盒模型包含content, padding, border, margin。默認背景繪製的區域包含:content+padding+border,不包含margin區域。經過該屬性能夠控制繪製的區域。spa
background-clip: border-box|padding-box|content-box|initial|inherit|text;
其中取值text
比較吊炸天,即背景只顯示在文本區域,能夠實現美輪美奐的文字啦。code
指定背景的顏色圖片
background-clip
屬性要先背景顏色屬性時,不然該background-clip
屬性無效(背景圖片就沒有這個問題)。給元素指定一個或多個圖片類型的背景(而只能指定一種背景顏色)。CSS3能夠指定多個背景圖片了。多個圖片之間用逗號隔開,其餘相關的屬性能夠作做用於多個背景圖片上,也是用逗號隔開。ip
背景圖片自己是有自身尺寸的(background-size),被應用元素也有本身的尺寸。能夠對背景圖片進行更復雜的操做。get
原點(origin)是指背景圖片開始繪製起始點,默認狀況下原點在被應用元素的padding區域的左上角位置。經過background-origin屬性能夠修改原點位置。以原點向右有X座標軸正方向,向下爲Y座標軸正方向,背景圖片就按照這個座標系統開始重複繪製背景圖片。座標系的反方向都是重複方式繪製。it
background-origin: padding-box|border-box|content-box|initial|inherit;
背景圖片的左上角稱爲背景圖片的位置。該位置是相對於原點構建的座標系,默認狀況下該位置就是在原點。經過background-position能夠指定圖片相對於原點移動的位置(也能夠認爲移動背景圖片到指定的位置)。io
background-position-x: xpos | inherit | initail; background-position-y: ypos | inherit | initail; // 簡寫形式 background-position: xpos [ypos] | inherit | initail;
xpos取值:class
background-position-x: 10%
並非表示圖片左上角相對於原點X軸方向移動10%,而是表示背景圖片X軸方向10%的位置(基於圖片Size計算)和原點座標X軸方向10%的位置(基於原點矩形寬度計算)對齊。計算方式有點繞,主要目的是經過這種計算方式能夠很容易實現背景圖片的對齊:如0%即表示左對齊,50%表示居中,100%表示右對齊。ypos取值:
一方面背景圖片可能比背景區域小, 另外一方面背景圖是從origin位置開始繪製的,部分背景區域可能在原點座標系的負方向。對那些沒有被背景圖片覆蓋的區域,瀏覽器默認會經過從左到右,從上到下的方向進行重複繪製背景圖片,原點的負方向也是按照這個方式重疊繪製。經過background-repeat屬性能夠控制是否重複以及怎麼執行重複繪製背景圖片。
background-repeat: repeat | repeat-x | repeat-y | space | round | initital | inherit
背景圖片可能具備原始的尺寸,能夠經過background-size指定背景圖片的大小,進而能夠對背景圖片進行縮放操做。
background-size: auto | width [height] | cover | contain | initail | inherit
width [height] 指定具體的長度,
指定多個背景圖片混合模式
指定背景圖片的固定方式。
background-attachment: scroll|fixed|local|initial|inherit;
簡寫格式
background: bg-color bg-image position/bg-size bg-repeat bg-origin bg-clip bg-attachment initial|inherit;
額,好長,記不清的話還不如使用具體的backgroud屬性。方便的記憶法:
繪製元素背景的條件: