CSS Backgrounds (背景)

2022-05-19 14:41 更新

CSS 背景


CSS 背景屬性用于定義 HTML 元素的背景。

CSS 屬性定義背景效果:

  • background-color
  • background-image
  • background-repeat
  • background-attachment
  • background-position

背景顏色

background-color 屬性定義了元素的背景顏色。

頁(yè)面的背景顏色使用在 body 的選擇器中:

實(shí)例

body {background-color:#b0c4de;}

嘗試一下 ?

CSS 中,顏色值通常以以下方式定義:

  • 十六進(jìn)制 - 如:"#ff0000"
  • RGB - 如:"rgb(255,0,0)"
  • 顏色名稱 - 如:"red"

以下實(shí)例中, h1, p, 和 div元素?fù)碛胁煌谋尘邦伾?

實(shí)例

h1 {background-color:#6495ed;}
p {background-color:#e0ffff;}
div {background-color:#b0c4de;}

嘗試一下 ?

提示:你可以為所有元素設(shè)置背景色,包括 body 一直到 ema 等行內(nèi)元素。

提示:background-color 不能繼承,其默認(rèn)值是 transparent。如果一個(gè)元素沒有指定背景色,那么背景就是透明的,這樣其父元素的背景才可見。


背景圖像

background-image 屬性描述了元素的背景圖像.

默認(rèn)情況下,背景圖像進(jìn)行平鋪重復(fù)顯示,以覆蓋整個(gè)元素實(shí)體。

頁(yè)面背景圖片設(shè)置實(shí)例:

實(shí)例

body {background-image:url('paper.gif');}

嘗試一下 ?

下面是一個(gè)例子是一個(gè)糟糕的文字和背景圖像組合。文本可讀性差:

實(shí)例

body {background-image:url('bgdesert.jpg');}

嘗試一下 ?


背景圖像 - 水平或垂直平鋪

如果需要在 HTML 頁(yè)面上對(duì)背景圖像進(jìn)行平鋪,可以使用 background-repeat 屬性。

默認(rèn)情況下 background-image 屬性會(huì)在頁(yè)面的水平或者垂直方向平鋪。

一些圖像如果在水平方向與垂直方向平鋪,這樣看起來很不協(xié)調(diào),如下所示: 

實(shí)例

body
{background-image:url('gradient2.png'); }

嘗試一下 ?

如果圖像只在水平方向平鋪 (repeat-x) , 頁(yè)面背景會(huì)更好些:

實(shí)例

body
{background-image:url('gradient2.png');
background-repeat:repeat-x;}

嘗試一下 ?


背景圖像- 設(shè)置定位與不平鋪

Remark 讓背景圖像不影響文本的排版

如果你不想讓圖像平鋪,你可以使用 background-repeat 屬性:

實(shí)例

body
{background-image:url('img_tree.png');
background-repeat:no-repeat;}

嘗試一下 ?

以上實(shí)例中,背景圖像與文本顯示在同一個(gè)位置,為了讓頁(yè)面排版更加合理,不影響文本的閱讀,我們可以改變圖像的位置。

可以利用 background-position 屬性改變圖像在背景中的位置:

實(shí)例

body
{background-image:url('img_tree.png');
background-repeat:no-repeat;
background-position:right top;}

嘗試一下 ?

提示:background-position 屬性提供值有很多方法。首先,可以使用一些關(guān)鍵字:topbottom、left、rightcenter;其次,可以使用長(zhǎng)度值,如 100px 或 5cm;最后也可以使用百分?jǐn)?shù)值。不同類型的值對(duì)于背景圖像的放置稍有差異。

關(guān)鍵字

圖像放置關(guān)鍵字最容易理解的作用就像其名字的意義。例如,top left 使圖像放置在元素內(nèi)邊距區(qū)的左上角。

只要保證不超過兩個(gè)關(guān)鍵字:一個(gè)對(duì)應(yīng)水平方向,另一個(gè)對(duì)應(yīng)垂直方向,那么你可以設(shè)置位置關(guān)鍵字以任何順序出現(xiàn)。

如果只有一個(gè)關(guān)鍵字,則會(huì)默認(rèn)另一個(gè)關(guān)鍵字為 center。

所以,如果希望每個(gè)段落的中部上方出現(xiàn)一個(gè)圖像,只需聲明如下:

p        

{background-image:url('img_tree.png');        

background-repeat:no-repeat;            

background-position:top;}

下面是等價(jià)的位置關(guān)鍵字:

單一關(guān)鍵字 等價(jià)的關(guān)鍵字
center center center
top top center 或 center top
bottom bottom center 或 center bottom
right right center 或 center right
left left center 或 center left

百分?jǐn)?shù)值

百分?jǐn)?shù)值的表現(xiàn)方式更為復(fù)雜。假設(shè)你希望用百分?jǐn)?shù)值將圖像在其元素中居中,你可以按照下面的代碼進(jìn)行設(shè)置:

body

{background-image:url('img_tree.png');  

background-repeat:no-repeat;    

background-position:50% 50%;}

這會(huì)導(dǎo)致圖像適當(dāng)放置,其中心與其元素的中心對(duì)齊。

因此,如果你想把一個(gè)圖像放在水平方向 2/3、垂直方向 1/3 處,可以這樣聲明:

body      

{background-image:url('img_tree.png');   

background-repeat:no-repeat;   

background-position:66% 33%;}

長(zhǎng)度值

長(zhǎng)度值解釋的是元素內(nèi)邊距區(qū)左上角的偏移,偏移點(diǎn)是圖像的左上角。

比如,如果設(shè)置值為 50px 100px,圖像的左上角將在元素內(nèi)邊距區(qū)左上角向右 50 像素、向下 100 像素的位置上:

body

{background-image:url('img_tree.png');

background-repeat:no-repeat;

background-position:50px 100px;}

注意,這一點(diǎn)與百分?jǐn)?shù)值不同,因?yàn)槠浦皇菑囊粋€(gè)左上角到另一個(gè)左上角。也就是說,圖像的左上角與 background-position 聲明中的指定的點(diǎn)對(duì)齊。


背景- 簡(jiǎn)寫屬性

在以上實(shí)例中我們可以看到頁(yè)面的背景顏色通過了很多的屬性來控制。

為了簡(jiǎn)化這些屬性的代碼,我們可以將這些屬性合并在同一個(gè)屬性中.

背景顏色的簡(jiǎn)寫屬性為 "background":

實(shí)例

body {background:#ffffff url('img_tree.png') no-repeat right top;}

嘗試一下 ?

當(dāng)使用簡(jiǎn)寫屬性時(shí),屬性值的順序?yàn)椋?

  • background-color
  • background-image
  • background-repeat
  • background-attachment
  • background-position

以上屬性無需全部使用,你可以按照頁(yè)面的實(shí)際需要使用.

這個(gè)實(shí)例使用了先前介紹的 CSS,你可以查看相應(yīng)實(shí)例: CSS 實(shí)例


Examples

更多實(shí)例

如何設(shè)置固定的背景圖像
本例演示如何設(shè)置固定的背景圖像。圖像不會(huì)隨著頁(yè)面的其他部分滾動(dòng)。


CSS 背景屬性

Property 描述
background 簡(jiǎn)寫屬性,作用是將背景屬性設(shè)置在一個(gè)聲明中。
background-attachment 背景圖像是否固定或者隨著頁(yè)面的其余部分滾動(dòng)。
background-color 設(shè)置元素的背景顏色。
background-image 把圖像設(shè)置為背景。
background-position 設(shè)置背景圖像的起始位置。
background-repeat 設(shè)置背景圖像是否及如何重復(fù)。


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)