小13箩利洗澡无码免费视频_高清欧美日韩中文在线字幕视频_91视频精品全国免费观看_麻豆精品永久免费视频

建站知識(shí)

Service Support

如意寶教您利用@media screen實(shí)現(xiàn)網(wǎng)頁(yè)響應(yīng)式布局

如意寶魔方建站  2020-08-05 13:56:00   次瀏覽

響應(yīng)式設(shè)計(jì),換句話說(shuō),就是讓頁(yè)面有能力去自動(dòng)響應(yīng)用戶(hù)的設(shè)備環(huán)境。

一、準(zhǔn)備工作

(1)設(shè)置Meta標(biāo)簽

首先我們?cè)谑褂肕edia的時(shí)候需要先設(shè)置下面這段代碼,來(lái)兼容移動(dòng)設(shè)備的展示效果:

<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">

這段代碼的幾個(gè)參數(shù)解釋?zhuān)?

width = device-width:寬度等于當(dāng)前設(shè)備的寬度

height = device-height:高度等于當(dāng)前設(shè)備的高度

initial-scale:初始的縮放比例(默認(rèn)設(shè)置為1.0)

minimum-scale:允許用戶(hù)縮放到的最小比例(默認(rèn)設(shè)置為1.0)

maximum-scale:允許用戶(hù)縮放到的最大比例(默認(rèn)設(shè)置為1.0)

user-scalable:用戶(hù)是否可以手動(dòng)縮放(默認(rèn)設(shè)置為no,因?yàn)槲覀儾幌M脩?hù)放大縮小頁(yè)面)

(2)加載兼容文件JS

因?yàn)镮E8既不支持HTML5也不支持CSS3 Media,所以我們需要加載兩個(gè)JS文件,來(lái)保證我們的代碼實(shí)現(xiàn)兼容效果:

<!--[if lt IE 9]>

<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>

<script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>

<![endif]-->

(3)設(shè)置IE渲染方式默認(rèn)為最高(這部分可以選擇添加也可以不添加)

我們先來(lái)看下下面這段代碼,估計(jì)很多人在響應(yīng)式的網(wǎng)站CSS很經(jīng)??吹筋?lèi)似下面的這段代碼:

@media screen and (max-width: 960px){body{background: #000;}}

這個(gè)應(yīng)該算是一個(gè)media的一個(gè)標(biāo)準(zhǔn)寫(xiě)法,上面這段CSS代碼意思是:當(dāng)頁(yè)面小于960px的時(shí)候執(zhí)行它下面的CSS.這個(gè)應(yīng)該沒(méi)有太大疑問(wèn)。

應(yīng)該有人會(huì)發(fā)現(xiàn)上面這段代碼里面有個(gè)screen,他的意思是在告知設(shè)備在打印頁(yè)面時(shí)使用襯線字體,在屏幕上顯示時(shí)用無(wú)襯線字體。但是目前發(fā)現(xiàn)很多網(wǎng)站都會(huì)直接省略screen,因?yàn)槟愕木W(wǎng)站可能不需要考慮用戶(hù)去打印時(shí),你可以直接這樣寫(xiě):

@media (max-width: 960px){body{background: #000;}}

 

二、CSS3 Media

CSS3的媒體查詢(xún),在第一段代碼上面我用的是小于960px的尺寸的寫(xiě)法,那現(xiàn)在我們來(lái)實(shí)現(xiàn)等于960px尺寸的代碼:

@media screen and (max-device-width:960px){body{background:red;}}

然后就是當(dāng)瀏覽器尺寸大于960px時(shí)候的代碼了:

@media screen and (min-width:960px){body{background:orange;}}

我們還可以混合使用上面的用法:

@media screen and (min-width:960px) and (max-width:1200px){body{background:yellow;}}

上面的這段代碼的意思是當(dāng)頁(yè)面寬度大于960px小于1200px的時(shí)候執(zhí)行下面的CSS。


三、Media所有參數(shù)匯總

以上就是我們最常需要用到的媒體查詢(xún)器的三個(gè)特性,大于,等于,小于的寫(xiě)法。媒體查詢(xún)器的全部功能肯定不止這三個(gè)功能,下面是總結(jié)的它的一些參數(shù)用法解釋?zhuān)?

  • width:瀏覽器可視寬度。

  • height:瀏覽器可視高度。

  • device-width:設(shè)備屏幕的寬度。

  • device-height:設(shè)備屏幕的高度。

  • orientation:檢測(cè)設(shè)備目前處于橫向還是縱向狀態(tài)。

  • aspect-ratio:檢測(cè)瀏覽器可視寬度和高度的比例。(例如:aspect-ratio:16/9)

  • device-aspect-ratio:檢測(cè)設(shè)備的寬度和高度的比例。

  • color:檢測(cè)顏色的位數(shù)。(例如:min-color:32就會(huì)檢測(cè)設(shè)備是否擁有32位顏色)

  • color-index:檢查設(shè)備顏色索引表中的顏色,他的值不能是負(fù)數(shù)。

  • monochrome:檢測(cè)單色楨緩沖區(qū)域中的每個(gè)像素的位數(shù)。(這個(gè)太高級(jí),估計(jì)咱很少會(huì)用的到)

  • resolution:檢測(cè)屏幕或打印機(jī)的分辨率。(例如:min-resolution:300dpi或min-resolution:118dpcm)。

  • grid:檢測(cè)輸出的設(shè)備是網(wǎng)格的還是位圖設(shè)備。

注意下順序,如果你把@media (min-width: 768px)寫(xiě)在了下面那么很悲劇,

@media (min-width: 1200){ //>=1200的設(shè)備 }

@media (min-width: 992px){ //>=992的設(shè)備 }

@media (min-width: 768px){ //>=768的設(shè)備 }

因?yàn)槿绻?440,由于1440>768那么你的1200就會(huì)失效。

所以我們用min-width時(shí),小的放上面大的在下面,同理如果是用max-width那么就是大的在上面,小的在下面

@media (max-width: 1199){ //<=1199的設(shè)備 }

@media (max-width: 991px){ //<=991的設(shè)備 }

@media (max-width: 767px){ //<=768的設(shè)備 }

1280分辨率以上(大于1200px)

@media screen and (min-width:1200px){ #page{ width: 1100px; }#content,.div1{width: 730px;}#secondary{width:310px} }

1100分辨率(大于960px,小于1199px)

@media screen and (min-width: 960px) and (max-width: 1199px) { #page{ width: 960px; }#content,.div1{width: 650px;}#secondary{width:250px}select{max-width:200px} }

880分辨率(大于768px,小于959px)

@media screen and (min-width: 768px) and (max-width: 959px) { #page{ width: 900px; }#content,.div1{width: 620px;}#secondary{width:220px}select{max-width:180px} }

720分辨率(大于480px,小于767px)

@media only screen and (min-width: 480px) and (max-width: 767px){ #page{ width: 450px; }#content,.div1{width: 420px;position: relative; }#secondary{display:none}#access{width: 450px; }#access a {padding-right:5px}#access a img{display:none}#rss{display:none}#branding #s{display:none} }

440分辨率以下(小于479px)

@media only screen and (max-width: 479px) { #page{ width: 300px; }#content,.div1{width: 300px;}#secondary{display:none}#access{width: 330px;} #access a {padding-right:10px;padding-left:10px}#access a img{display:none}#rss{display:none}#branding #s{display:none}#access ul ul a{width:100px} }

  1. /* 豎屏 */@media screen and (orientation: portrait) and (max-width: 720px) { 對(duì)應(yīng)樣式 }

  2. /* 橫屏 */@media screen and (orientation: landscape) { 對(duì)應(yīng)樣式 }

上面的代碼中用到了screen ,他的意思是在告知設(shè)備在打印頁(yè)面時(shí)使用襯線字體,在屏幕上顯示時(shí)用無(wú)襯線字體。但是目前發(fā)現(xiàn)很多網(wǎng)站都會(huì)直接省略screen,因?yàn)槟愕木W(wǎng)站可能不需要考慮用戶(hù)去打印時(shí)。


CSS代碼

@media (min-width: 1024px){
body{font-size: 18px}
} /*>=1024的設(shè)備*/
@media (min-width: 1100px) {
body{font-size: 20px}
} /*>=1024的設(shè)備*/
@media (min-width: 1280px) {
body{font-size: 22px;}
}
@media (min-width: 1366px) {
body{font-size: 24px;}
}
@media (min-width: 1440px) {
body{font-size: 25px !important;}
}
@media (min-width: 1680px) {
body{font-size: 28px;}
}
@media (min-width: 1920px) {
body{font-size: 33px;}
}

上一條:如意寶建站為您解讀:ipv6真的來(lái)了嗎?

下一條:沒(méi)有了

返回列表