使用@media響應式適配各種屏幕


定義和使用

使用 @media 查詢,你可以針對不同的媒體類型定義不同的樣式。

@media 可以針對不同的屏幕尺寸設置不同的樣式,特別是如果你需要設置設計響應式的頁面,@media 是非常有用的。

當你重置瀏覽器大小的過程中,頁面也會根據瀏覽器的寬度和高度重新渲染頁面。

 

PC端設備屏幕的寬度

頁面寬度大於1000px(>=1000)且小於1200px(<=1200)的時候執行下面的CSS(實際剛好“>=1000”或“<=1200”的都執行)

@media screen and (min-width:1000px) and (max-width: 1200px){
    .cont_li{
        width: 50px;
        margin-left: 7px;
        padding-left: 9px;
    }
}

注意以下順序,如果把@media (min-width: 768px)寫在了最下方,那么很悲劇,

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

這是因為如果屏幕寬度是1440,由於1440>768那么1200就會失效。

所以在使用min-width時,小的在前面,大的在后面;同理,如果使用max-width時,就是大的在前面,小的在后面:

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

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

PC屏幕自適應CSS3代碼:

/*當頁面寬度大於1000px且小於1200px的時候執行,1000-1200*/
@media screen and (min-width:1000px) and (max-width: 1200px){
    body{
        font-size:16px
    }
}
/*當頁面寬度大於1280px且小於1366px的時候執行,1280-1366*/
@media screen and (min-width:1280px) and (max-width: 1366px){
    body{
        font-size:18px
    }
}
/*當頁面寬度大於1440px且小於1600px的時候執行,1440-1600*/
@media screen and (min-width:1440px) and (max-width:1600px){
    body{
        font-size:20px
    }
}
/*當頁面寬度大於1680px且小於1920px的時候執行,1680-1920*/
@media screen and (min-width:1680px) and (max-width:1920px){
    body{
        font-size:22px
    }
}

電腦屏幕尺寸的例表得到了幾個寬度:1024、1200、1280、1366、1440、1600、1680、1920。

 

移動端設備屏幕的寬度

rem(font size of the root element)是指相對於根元素的字體大小的單位。簡單的說它就是一個相對單位。看到rem大家一定會想起em單位,em(font size of the element)是指相對於父元素的字體大小的單位。它們之間其實很相似,只不過一個計算的規則是依賴根元素一個是依賴父元素計算。

所以這里總結一句,所謂依賴根元素來計算的方式,就是先給予html元素一個font-size,然后我們所有的rem就根據這個font-size來計算,例如:

1 html{ font-size:16px;}

那么我們這里的1rem就應該這么來計算:1x16=16px=1rem;

移動端字體:

@media screen and (min-width: 320px) {html{font-size:50px;}}
@media screen and (min-width: 360px) {html{font-size:56.25px;}}
@media screen and (min-width: 375px) {html{font-size:58.59375px;}}
@media screen and (min-width: 400px) {html{font-size:62.5px;}}
@media screen and (min-width: 414px) {html{font-size:64.6875px;}}
@media screen and (min-width: 440px) {html{font-size:68.75px;}}
@media screen and (min-width: 480px) {html{font-size:75px;}}
@media screen and (min-width: 520px) {html{font-size:81.25px;}}
@media screen and (min-width: 560px) {html{font-size:87.5px;}}
@media screen and (min-width: 600px) {html{font-size:93.75px;}}
@media screen and (min-width: 640px) {html{font-size:100px;}}
@media screen and (min-width: 680px) {html{font-size:106.25px;}}
@media screen and (min-width: 720px) {html{font-size:112.5px;}}
@media screen and (min-width: 760px) {html{font-size:118.75px;}}
@media screen and (min-width: 800px) {html{font-size:125px;}}
@media screen and (min-width: 960px) {html{font-size:150px;}}

移動端屏幕自適應CSS3代碼:

@media screen and (min-width:320px) and (max-width:360px){
    body{
        font-size: 12px;
    }
}
@media screen and (min-width:360px) and (max-width:390px){
    body{
        font-size: 13px;
    }
}
@media screen and (min-width:390px) and (max-width:460px){
    body{
        font-size: 14px;
    }
}

@media screen and (min-width:320px) and (max-width:460px){
    body{
        font-size: 12.5px;
    }
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM