在CSS3中,使用background-clip屬性來將背景圖片根據實際需要進行剪切。
語法:
background-clip:屬性值;
說明:
background-clip屬性取值如下表:
background-clip屬性還有一個取值為no-clip,與border-box顯示同樣效果,沒什麼卵用,在此不列出來增加大家記憶負擔。
background-clip屬性指定了背景在哪些區域可以顯示,但與背景開始繪制的位置(即background-origin屬性)無關。背景繪制的位置可以出現在不顯示背景的區域。這就相當於背景圖片被不顯示背景的區域裁剪了一部分一樣。
舉例:
在線測試<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>CSS3 background-clip屬性</title> <style type="text/css"> body { font-family:微軟雅黑; font-size:14px; } #view { display:inline-block; width:400px; padding:15px; font-size:15px; border:15px dashed #F1F1F1; background-image:url("../App_images/lesson/run_css3/mingren.png"); background-origin:border-box; background-repeat:no-repeat; background-clip:border-box; } </style> <script src="../App_js/jquery-1.11.3.min.js" type="text/javascript"></script> <script type="text/javascript"> $(function () { $("#ckb1").click(function () { $("#view").css("background-clip", "border-box"); }); $("#ckb2").click(function () { $("#view").css("background-clip", "padding-box"); }); $("#ckb3").click(function () { $("#view").css("background-clip", "content-box"); }); }) </script> </head> <body> <div id="select"> background-clip: <input id="ckb1" name="group" type="radio" value="border-box" checked="checked"/><label for="ckb1">border-box</label> <input id="ckb2" name="group" type="radio" value="padding-box"/><label for="ckb2">padding-box</label> <input id="ckb3" name="group" type="radio" value="content-box"/><label for="ckb3">content-box</label> </div> <div id="view">  學習網, 學習網, 學習網, 學習網, 學習網, 學習網, 學習網, 學習網, 學習網, 學習網, 學習網, 學習網, 學習網, 學習網, 學習網, 學習網, 學習網, 學習網, 學習網, 學習網, 學習網, 學習網, 學習網, 學習網, 學習網, 學習網。 </div> </body> </html>
在浏覽器預覽效果如下:
分析:
這裡首先使用“background-origin:border-box;”定義背景圖片從邊框開始平鋪,然後這裡做了一個小程序,大家可以動態觀察當background-clip屬性值變化時的實際效果。
注意:此例子請在火狐浏覽器下測試,否則無法查看動態效果。