搜尋
首頁web前端css教學響應式佈局之CSS3媒體查詢Media Queries 的詳細介紹

利用我們的CSS3實作響應式佈局 

僅僅有彈性盒還不夠
CSS3還擴展了media屬性,增加了一個模組功能
Media Queries媒體查詢功能

媒體查詢引入

隨著行動裝置的快速普及
越來越多的使用者使用智慧型機、平板電腦等瀏覽頁面
所有考慮到用戶的需求
我們要保證用戶在各種設備上瀏覽頁面都有不錯的體驗
這樣我們就需要媒體查詢
它允許我們為不同的設備或不同條件的設備設定不同的樣式
不過如果行動端有很重要的需求
還是應該針對行動端開發專門的頁面比較好
下面我們來看看引入媒體查詢的方式

媒體查詢選擇性載入檔案

首先我們先來看看link方法
這是CSS2中的做法
使用link標籤和media屬性來引入不同樣式表(如果滿足條件)

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

這裡引入兩個概念
一個是媒體類型(Media Type),這裡的screen
一個是媒體特性 (Media Query),這裡的max-width: 600px

Media Query是CSS3 對Media Type的增強版
其實可以將Media Query看成Media Type(判斷條件)+CSS(符合條件的樣式規則)

這段程式碼翻譯過來就是
如果媒體媒體是螢幕類型並且視窗寬度≤600px,則引入demo.css樣式檔案

媒體查詢選擇性新增樣式

我們在CSS3中的做法是在CSS檔案中使用@media規則添加不同樣式
相比link,它能夠減少頁面請求,效果更佳

@media screen and (max-width: 600px) {    .demo1 {        ......
    }
    .demo2 {
        ......
    }
}

其他媒體查詢引入

媒體查詢有很多很多,我們不需要了解那麼多
常用的只有上面兩種
@import也可以使用媒體查詢

@import url(demo.css) screen;

媒體查詢使用

如果我們想要指定多個媒體特性
就直接使用and關鍵字
媒體特性部分的指定需要使用括號

media="screen and (min-width: 601px) and (max-width: 800px)"

樣式應用在601px~800px之間的畫面


媒體查詢沒有or指定備用媒體功能,但是我們可以使用逗號分隔清單

media="screen and (min-width: 601px), print and (min-width: 6in)"

樣式應用在601px+的螢幕或使用至少6英吋寬的紙張的列印設備


媒體查詢可以指定否定條件
需要我們在媒體聲明的最前面使用關鍵字not
注意,它不能再單一條件前單獨聲明,not會否定整個媒體聲明

media="not screen and (min-width: 600px) and (max-width: 800px)"

樣式應用在不是600px~800px之間的屏幕


除了not關鍵字,還有一個only
它用來向早期的瀏覽器隱藏媒體查詢
類似於not,必須宣告在媒體宣告語句的最前面
例如這段宣告

media="screen and (min-width: 601px) and (max-width: 800px)"

早期的瀏覽器,只能把它理解成media="screen"
由於它不理解媒體特性,所以它會對所有螢幕裝置應用樣式規則
但是使用了only關鍵字

media="only screen and (min-width: 601px) and (max-width: 800px)"

早期瀏覽器會把它理解為media="only "
但是不存在only媒體類型,所以它不會應用任何樣式
實現了向早期的瀏覽器隱藏媒體查詢的功能

媒體類型與媒體特性

媒體類型

媒體類型的關鍵字雖然很多,但是大多都被廢棄了(誰用啊)
常用的也就是all、screen,再就是print

媒體類型 描述
all #所有媒體裝置
screen 彩色螢幕:電腦、平板、智慧型電腦..
print 印表機、列印預覽
speech 發生裝置:螢幕閱讀器..
aural (已廢棄)語音和音訊合成器
braille (已廢棄)以盲眼用盲法觸覺回饋設備
embossed (已廢棄)分頁的盲眼用點字法印表機
handheld
######### ##(已廢棄)便攜式設備:小型電話..############projection######(已廢棄)投影設備:幻燈片..######## #####tty######(已廢棄)使用固定密度字母柵格的媒體:電傳打字機和終端..###########tv###### #(已廢棄)電視機類型設備:電視、網路電視..############

媒體特性

媒體特性就非常多了,同樣很多用不上

##描述#輸出裝置中的頁面可見區域寬度與高度的比率color輸出裝置每一組彩色原件的數量。如果不是彩色設備,則值等於0color-index在輸出設備的彩色查詢表中的條目數。如果沒有使用彩色查詢表,則值等於0device-aspect-ratio輸出裝置的螢幕可見寬度與高度的比率device-輸出裝置的螢幕可見高#device-width輸出設備的螢幕可見寬度grid查詢輸出裝置是否使用柵格或點陣height輸出裝置中的頁面可見區域高度max-aspect-ratio輸出裝置的螢幕可見寬度與高度的最大比率max-color輸出裝置每一組彩色原件的最大個數#max-color-indexmax-device-aspect-ratiomax-device-heightmax-device-widthmax-heightmax-monochr框架max-resolution#max-widthmin-aspect-ratiomin-color min-color-indexmin-device-aspect-ratiomin- device-width#min-device-heightmin-heightmin-monochrome#min-resolutionmin-widthmonochromeorientationresolution300#scan #width
#媒體類型
#aspect-ratio
height
##輸出裝置的彩色查詢表中的最大條目數
輸出裝置的螢幕可見寬度與高度的最大比率
輸出裝置的螢幕可見的最大高度
輸出裝置的螢幕最大可見寬度
#輸出裝置中的頁面最大可見區域高度
ome在一個單色緩衝區中每個像素包含的最大單色原件個數
裝置最大解析度
輸出裝置中頁面最大可見區域寬度
輸出裝置中頁面可見區域寬度與高度的最小比率
輸出裝置每一組彩色原件的最小個數
輸出裝置的彩色查詢表中的最小條目數
輸出裝置螢幕可見寬度與高度的最小比率
輸出裝置的螢幕最小可見寬度
輸出裝置的螢幕的最小可見高度
輸出裝置中的頁面最小可見區域高度
一個單色框架緩衝區中每個像素包含的最小單色原件個數
裝置的最小解析度
輸出裝置中的頁面最小可見區寬度
在一個單色框架緩衝區中每像素包含的單色原件個數。如果不是單色設備,則值等於0
#輸出設備中的頁面可見區域高度是否大於或等於寬度
裝置的解析度。如:96dpi, dpi, 118dpcm
電視類別裝置的掃描工序
#輸出裝置中的頁面可見區域寬度
#這裡有註意區分device-width/height與width/height

device -width/height 是裝置的寬度(而不是瀏覽器的寬度)
width/height是我們瀏覽器視窗的尺寸
使用
document
Element.clientWidth/clientHeight即viewport 的值

以上是響應式佈局之CSS3媒體查詢Media Queries 的詳細介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
CSS Flexbox與網格:全面評論CSS Flexbox與網格:全面評論May 12, 2025 am 12:01 AM

選擇Flexbox還是Grid取決於佈局需求:1)Flexbox適用於一維佈局,如導航欄;2)Grid適合二維佈局,如雜誌式佈局。兩者在項目中可結合使用,提升佈局效果。

如何包括CSS文件:方法和最佳實踐如何包括CSS文件:方法和最佳實踐May 11, 2025 am 12:02 AM

包含CSS文件的最佳方法是使用標籤在HTML的部分引入外部CSS文件。 1.使用標籤引入外部CSS文件,如。 2.對於小型調整,可以使用內聯CSS,但應謹慎使用。 3.大型項目可使用CSS預處理器如Sass或Less,通過@import導入其他CSS文件。 4.為了性能,應合併CSS文件並使用CDN,同時使用工具如CSSNano進行壓縮。

Flexbox vs Grid:我應該學習兩者嗎?Flexbox vs Grid:我應該學習兩者嗎?May 10, 2025 am 12:01 AM

是的,youshouldlearnbothflexboxandgrid.1)flexboxisidealforone-demensional,flexiblelayoutslikenavigationmenus.2)gridexcelstcelsintwo-dimensional,confffferDesignssignssuchasmagagazineLayouts.3)blosebothenHancesSunHanceSlineHancesLayOutflexibilitibilitibilitibilitibilityAnderibilitibilityAndresponScormentilial anderingStruction

軌道力學(或我如何優化CSS KeyFrames動畫)軌道力學(或我如何優化CSS KeyFrames動畫)May 09, 2025 am 09:57 AM

重構自己的代碼看起來是什麼樣的?約翰·瑞亞(John Rhea)挑選了他寫的一個舊的CSS動畫,並介紹了優化它的思維過程。

CSS動畫:很難創建它們嗎?CSS動畫:很難創建它們嗎?May 09, 2025 am 12:03 AM

CSSanimationsarenotinherentlyhardbutrequirepracticeandunderstandingofCSSpropertiesandtimingfunctions.1)Startwithsimpleanimationslikescalingabuttononhoverusingkeyframes.2)Useeasingfunctionslikecubic-bezierfornaturaleffects,suchasabounceanimation.3)For

@KeyFrames CSS:最常用的技巧@KeyFrames CSS:最常用的技巧May 08, 2025 am 12:13 AM

@keyframesispopularduetoitsversatoryand and powerincreatingsmoothcsssanimations.keytricksinclude:1)definingsmoothtransitionsbetnestates,2)使用AnimatingMultatingMultationMultationProperPertiessimultane,3)使用使用4)使用BombingeNtibalibility,4)使用CombanningWiThjavoFofofofoftofofo

CSS計數器:自動編號的綜合指南CSS計數器:自動編號的綜合指南May 07, 2025 pm 03:45 PM

CSSCOUNTERSAREDOMANAGEAUTOMANAMBERINGINWEBDESIGNS.1)他們可以使用forterablesofcontents,ListItems,and customnumbering.2)AdvancedsincludenestednumberingSystems.3)挑戰挑戰InclassINCludeBrowsEccerCerceribaliblesibility andperformiballibility andperformissises.4)創造性

使用捲軸驅動動畫的現代滾動陰影使用捲軸驅動動畫的現代滾動陰影May 07, 2025 am 10:34 AM

使用滾動陰影,尤其是對於移動設備,是克里斯以前涵蓋的一個微妙的UX。傑夫(Geoff)涵蓋了一種使用動畫限制屬性的新方法。這是另一種方式。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強大的PHP整合開發環境

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

WebStorm Mac版

WebStorm Mac版

好用的JavaScript開發工具

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )專業的PHP整合開發工具