bootstrap媒體查詢有什麼作用

2022-01-10 13:00:06

在Bootstrap中,媒體查詢可以通過螢幕的大小來分辨使用的裝置並設定不同樣式,可以在不同的條件下使用不同的樣式,使頁面在不同在終端裝置下達到不同的渲染效果。

本教學操作環境:Windows7系統、bootsrap3.3.7版、DELL G3電腦

bootstrap媒體查詢通過螢幕的大小來分辨你使用的裝置

  • 額外的小裝置(手機,小於 768px)

  • 小型裝置(平板電腦,768px 起)

  • 中型裝置(臺式電腦,992px 起)

  • 大型裝置(大臺式電腦,1200px 起)

媒體查詢能在不同的條件下使用不同的樣式,使頁面在不同在終端裝置下達到不同的渲染效果。前面簡單的介紹了媒體查詢如何參照到專案中,但媒體查詢有其自己的使用規則。具體來說,媒體查詢 的使用方法如下。

@media 媒體型別and (媒體特性){你的樣式}

注意:使用媒體查詢必須要使用「@media」開頭,然後指定媒體型別(也可以稱為裝置型別),隨後是指定媒體特性(也可以稱之為裝置特性)。媒體特性的書寫方式和樣式的書寫方式非常相似,主要分為兩個部分,第一個部分指的是媒體特性,第二部分為媒體特性所指定的值,而且這兩個部分之間使用冒號分隔。例如:

(max-width: 480px)
從前面表中可以得知,主要有十種媒體型別和13種媒體特性,將其組合就類似於不同的CSS集合。
但與CSS屬性不同的是,媒體特性是通過min/max來表示大於等於或小於做為邏輯判斷,
而不是使用小於(<)和大於(>)這樣的符號來判斷。接下來一起來看看Media Queries在實際專案中常用的方式。

1、最大寬度max-width

「max-width」是媒體特性中最常用的一個特性,其意思是指媒體型別小於或等於指定的寬度時,樣式生效。如:

@media screen and (max-width:480px){
 .ads {
   display:none;
  }
}

上面表示的是:當螢幕小於或等於480px時,頁面中的廣告區塊(.ads)都將被隱藏。

2、最小寬度min-width

「min-width」與「max-width」相反,指的是媒體型別大於或等於指定寬度時,樣式生效。

@media screen and (min-width:900px){
.wrapper{width: 980px;}
}

上面表示的是:當螢幕大於或等於900px時,容器「.wrapper」的寬度為980px。

3、多個媒體特性使用

Media Queries可以使用關鍵詞"and"將多個媒體特性結合在一起。也就是說,一個Media Query中可以包含0到多個表示式,表示式又可以包含0到多個關鍵字,以及一種媒體型別。

當螢幕在600px~900px之間時,body的背景色渲染為「#f5f5f5」,如下所示。

@media screen and (min-width:600px) and (max-width:900px){
  body {background-color:#f5f5f5;}
}

4、裝置螢幕的輸出寬度Device Width

在智慧裝置上,例如iPhone、iPad等,還可以根據螢幕裝置的尺寸來設定相應的樣式(或者呼叫相應的樣式檔案)。同樣的,對於螢幕裝置同樣可以使用「min/max」對應引數,如「min-device-width」或者「max-device-width」。

<link rel="stylesheet" media="screen and (max-device-width:480px)" href="iphone.css" />

上面的程式碼指的是「iphone.css」樣式適用於最大裝置寬度為480px,比如說iPhone上的顯示,這裡的「max-device-width」所指的是裝置的實際解析度,也就是指可視面積解析度。

5、not關鍵詞

使用關鍵詞「not」是用來排除某種制定的媒體型別,也就是用來排除符合表示式的裝置。換句話說,not關鍵詞表示對後面的表示式執行取反操作,如:

@media not print and (max-width: 1200px){樣式程式碼}

上面程式碼錶示的是:樣式程式碼將被使用在除列印裝置和裝置寬度小於1200px下所有裝置中。

6、only關鍵詞

only用來指定某種特定的媒體型別,可以用來排除不支援媒體查詢的瀏覽器。其實only很多時候是用來對那些不支援Media Query但卻支援Media Type的裝置隱藏樣式表的。其主要有:支援媒體特性的裝置,正常呼叫樣式,此時就當only不存在;表示不支援媒體特性但又支援媒體型別的裝置,這樣就會不讀樣式,因為其先會讀取only而不是screen;另外不支援Media Queries的瀏覽器,不論是否支援only,樣式都不會被採用。如

<link rel="stylesheet" media="only screen and (max-device-width:240px)" href="android240.css" />

在Media Query中如果沒有明確指定Media Type,那麼其預設為all,如:

<link rel="stylesheet" media="(min-width:701px) and (max-width:900px)" href="mediu.css" />

另外在樣式中,還可以使用多條語句來將同一個樣式應用於不同的媒體型別和媒體特性中,指定方式如下所示。

<link rel="stylesheet" type="text/css" href="style.css" media="handheld and (max-width:480px), screen and (min-width:960px)" />

上面程式碼中style.css樣式被用在寬度小於或等於480px的手持裝置上,或者被用於螢幕寬度大於或等於960px的裝置上。

到目前為止,CSS3 媒體查詢得到了眾多瀏覽器支援,除了IE6-8瀏覽器不支援之外,在所有現代瀏覽器中都可以完美支援。還有一個與眾不同的是,媒體查詢在其他瀏覽器中不要像其他CSS3屬性一樣在不同的瀏覽器中新增字首。

【相關推薦:《》】

以上就是bootstrap媒體查詢有什麼作用的詳細內容,更多請關注TW511.COM其它相關文章!