首頁  >  文章  >  web前端  >  css背景圖片怎麼自適應

css背景圖片怎麼自適應

anonymity
anonymity原創
2019-05-28 15:06:488560瀏覽

一張清晰漂亮的背景圖片能給網頁加分不少,設計師也常會給頁面的背景使用大圖,我們既不想圖片因為不同解析度圖片變形,也不希望當在大螢幕的情況下,背景有一塊露白,簡而言之,就是實現能自適應螢幕大小又不會變形的背景大圖,而且背景圖片不會隨著滾動條滾動而滾動,實現背景圖片的自適應。

css背景圖片怎麼自適應

以下是用CSS實作的方法:

#HTML:

<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="content-type" content="text/html;charset=utf-8"/>
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>title</title>
</head>
<body>
<div class="wrapper">
    <!--背景图片-->
    <div id="web_bg" style="background-image: url(./img/bg.jpg);"></div>
    <!--其他代码 ... -->
</div>
</body>
</html>

CSS:

#web_bg{
  position:fixed;
  top: 0;
  left: 0;
  width:100%;
  height:100%;
  min-width: 1000px;
  z-index:-10;
  zoom: 1;
  background-color: #fff;
  background-repeat: no-repeat;
  background-size: cover;
  -webkit-background-size: cover;
  -o-background-size: cover;
  background-position: center 0;
}

下面,我們來分析一下,css中每句程式碼的作用是什麼:

 position:fixed;  top: 0;  left: 0;

這三句是讓整個div固定在螢幕的最上方和最左方

 width:100%;  height:100%;  min-width: 1000px;

上面前兩句是讓整個div跟螢幕實現一模一樣的大小,從而達到全螢幕效果,而min-width是為了實現讓螢幕寬度在1000px以內時,div的大小保持不變,也就是說在這種情況下,縮放螢幕寬度時,圖片不要縮放(只有在1000px以內才有效)。

 z-index:-10;

這個的目的是讓整個div在HTML頁面中各個層級的下方,正常情況下,第一個創建的層級z-index的值是0,所以如果我們在這裡寫成-1也可以實現,不過這裡寫-10是確保整個div在最下面,因為如果頁面中層級太多了,有的時候用-1不一定在最下面,但如果寫成-100這樣大數字的也沒有什麼意義。用index:-10 以此能達到看上去像背景圖片,其實是一個最普通的div,只是層級關係變了,才讓人看上去看是背景圖片。

 background-repeat: no-repeat;

上面這個是背景不要重複

 background-size: cover;
  -webkit-background-size: cover;
  -o-background-size: cover;

上面三句是一個意思,就是讓圖片隨螢幕大小同步縮放,但是有部分可能會被裁切,不過不至於會露白,下面兩句是為chrome和opera瀏覽器相容。

 background-position: center 0;

上面這句的意思就是圖片的位置,居中,靠左對齊。

以上是css背景圖片怎麼自適應的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn