1. 程式人生 > >CSS3 background

CSS3 background

background

     .box{
         width: 500px;
         height: 500px;
         border: 10px solid rgba(0,0,0,.5);
         margin: 20px auto;
         background: url("image/img02.jpg") no-repeat;
         padding: 30px;
     }

1)background裡設定的圖片,預設會把整個div填充滿,顯得很亂,設定no-repeat讓其不重複
2)background的背景圖預設會從border

的左上角那個頂點開始(不包含border),即使設定了padding,也是從那個點開始填充(注意圖片裡的箭頭)
這裡的background-origin: padding-box;(預設包含padding)
在這裡插入圖片描述
3)當設定background-origin: border-box;時,頂點變成border外開始左上角處的那個點了。(注意圖片裡的箭頭)(包含border)
在這裡插入圖片描述

4)當設定background-origin: content-box;時,頂點就變成從內容區開始的那個點了。(注意圖片裡的箭頭)(不包含padding)
在這裡插入圖片描述
5)background-attachment: fixed;這個屬性可以將背景圖片固定住,滾動條滾動,背景圖片仍靜止不動。
6)background-clip,這個東西跟background-origin有點相似,也是有padding-box,border-box,content-box三個值。它就是裁剪的意思。
當你的background頂著頭填充時,即background-origin: border-box;(覆蓋border)
這個時候,你裁剪一下,你從padding處裁剪,即background-clip: padding-box;
那麼,你頂著頭那部分背景(壓著border處的背景)就沒了。假如你從content處開始裁剪,即background-clip: content-box;這時候,你連壓著padding處那塊背景都沒了。效果如下:

            background-origin: border-box;
            background-clip: padding-box;

在這裡插入圖片描述

            background-origin: border-box;
            background-clip: border-box;

在這裡插入圖片描述
7)background-clip,還有一個神奇的屬性,text;這個屬性配合著transparent能夠為文字設背景圖
-webkit-這個東西代表這個屬性只在webkit核心裡才好用,它是一個私有的屬性。

	h2 {
            background
: url("image/img02.jpg"); color: transparent; -webkit-background-clip: text; }
<h2>我的媽呀</h2>

效果如下
在這裡插入圖片描述
8)background-size,這個就比較好用了,圖片如果不夠div的大小,填充不滿,直接來一個background-size: cover;就填充了
這個也可以設定百分比,畫素,比如:
background-size: 100px 200px; 設定寬100 高200
background-size: 50% 50%; 寬高都是這個div的一半
background-size: contain;表示當有一個地方拉到頭了,就不再拉伸了。

9)加多個背景圖,用background-position配合一下就能實現

        .box{
            width: 600px;
            height: 600px;
            border: 10px solid rgba(0,0,0,.5);
            margin: 20px auto;
            background-image: url("image/img02.jpg"),url("image/img01.jpg");
            background-repeat: no-repeat;
            background-position: 0 0,100px 100px;
        }

在這裡插入圖片描述