最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

rem實現(xiàn)響應(yīng)式布局的思路詳解

 更新時間:2023年03月20日 14:22:26   作者:傻小子  
這篇文章主要為大家介紹了rem實現(xiàn)響應(yīng)式布局的思路詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

正文

你是不是經(jīng)常被問一個問題:Vue的響應(yīng)式原理是什么?哈哈哈... 先不講原理,想想Vue的響應(yīng)式是指什么?Vue的響應(yīng)式是指data中的數(shù)據(jù)變化,然后視圖(dom)會跟著變化。那么響應(yīng)式布局可以理解為就是xx變化,然后布局跟著變化。那這個xx指的是什么呢?為什么布局要跟著變化呢? 下面一一來解答。

為什么要使用響應(yīng)式布局?

因為我們?yōu)g覽網(wǎng)頁的設(shè)備屏幕大小不一樣,例如有屏幕大的有屏幕小的手機。

16px的字體在iPhone6/7/8上展示效果:

16px的字體在iPad上展示效果:

寫移動端H5網(wǎng)頁的時候,一般設(shè)計稿是以375px也就是iPhone6/7/8的屏幕寬度去設(shè)計的,當(dāng)有用戶使用iPad打開的時候效果就會很不好,這顯然不是我們想看到的。

如何實現(xiàn)響應(yīng)式布局呢?

也就是說我們?nèi)绾卧趇Pad上看到和iPhone6/7/8也差不多的效果呢?沒錯你肯定想得到,那就是在iPad上的字體太小了,字體要設(shè)置得大一點才行。也就是說要實現(xiàn)字體的大小和隨著不同屏幕大小的變化。那如何實現(xiàn)在不同屏幕大小下,讓字體大小也不一樣呢?
那就是利用媒體查詢根據(jù)不同的屏幕設(shè)置各種屏幕寬度下的根元素font-size,然后布局使用rem代替px為長度單位,從而實現(xiàn)響應(yīng)式布局。

那什么是媒體查詢?

developer.mozilla.org/zh-CN/docs/…詳細(xì)的就不展開了,例如下面這段代碼就是指在最大屏幕寬度為374px的設(shè)備下,將根元素(html)的字體設(shè)置為86px

@media only screen and (max-width: 374px) {
    html {
        font-size: 86px
    }
}

那么什么是rem?

rem 是一個相對根元素(html)的長度單位px 是一個絕對長度單位em 同樣也是一個相對長度單位,只不過相對的是父元素如上面所設(shè)置的將html的font-szie設(shè)置為86px, 那么1rem就等于86px。

怎么計算出各個尺寸屏幕下的html元素font-size要設(shè)置為多少呢?

這個就得找一下各個屏幕尺寸下的代表機型,然后以其中一個為標(biāo)準(zhǔn),計算出其他的。一般是以iPhone6/7/8為標(biāo)準(zhǔn),為什么?因為現(xiàn)在設(shè)計稿大多是以iPhone6/7/8的屏幕寬度375px來設(shè)置的。
比較小的屏幕:iPhone5屏幕寬度:320px、標(biāo)準(zhǔn)的屏幕:iPhone6/7/8屏幕寬度:375px比較大的屏幕:iPhone6/7/8 Plus屏幕寬度:414px其他更多的比如iPad的屏幕:768px

如果將標(biāo)準(zhǔn)的屏幕寬度設(shè)置為100px
@media only screen and (min-width: 375px) and (max-width: 413px) {
    html {
        font-size: 100px
    }
}
那么小屏幕的  100 / x = 375 / 320   x = 85.333...
@media only screen and (max-width: 374px) {
    html {
        font-size: 85px
    }
}
那么大屏幕的  100 / x = 375 / 414  x = 110.4
@media only screen and (min-width: 414px) and (max-width: 767px) {
    html {
        font-size: 110px
    }
}
更大屏幕的  100 / x = 375 / 768  x = 204.8
@media only screen and (min-width: 768px) {
    html {
        font-size: 204px
    }
}
那么將.box的font-size就可以用rem為單位了,在標(biāo)準(zhǔn)的375px屏幕下,1rem就是100px,那么16px,就是 0.16rem。
.box {
   font-size: 0.16rem;
}
...
<div class="box">
    什么是響應(yīng)式布局?
</div>

在iPhone5上展示效果:

在iPhone6/7/8上展示效果:

在iPhone6/7/8 Plus上展示效果:

在iPad上展示效果:

怎么樣,是不是在各種尺寸屏幕下看到的效果是差不多的。這就是所謂隨著屏幕變化,布局跟著變化的響應(yīng)式布局實現(xiàn)的思路,同時是基于rem來實現(xiàn)的,rem不僅僅只用于font-size來設(shè)置字體大小,如果你只是設(shè)置字體變大,盒子的寬度這些還是用px那就會出問題。凡是可以設(shè)置數(shù)值的屬性都可以用rem為單位,例如width、 height...。基于rem的響應(yīng)式布局是整個頁面所有的長度單位都使用rem,這只是實現(xiàn)響應(yīng)式布局的一種方式。

完結(jié)感想

響應(yīng)式布局的優(yōu)勢就是一套代碼,為不同寬度的設(shè)備提供渲染效果不一樣的網(wǎng)頁,而只需要維護(hù)一套代碼。不需要針對不同的設(shè)備來寫多套代碼,同時解決了屏幕小內(nèi)容會擁擠、屏幕大一點的話內(nèi)容又看不清楚的問布局題。

以上就是rem實現(xiàn)響應(yīng)式布局的思路詳解的詳細(xì)內(nèi)容,更多關(guān)于rem響應(yīng)式布局思路的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • vue + vuex todolist的實現(xiàn)示例代碼

    vue + vuex todolist的實現(xiàn)示例代碼

    這篇文章主要介紹了vue + vuex todolist的實現(xiàn)示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-03-03
  • C#實現(xiàn)將一個字符轉(zhuǎn)換為整數(shù)

    C#實現(xiàn)將一個字符轉(zhuǎn)換為整數(shù)

    下面小編就為大家分享一篇C#實現(xiàn)將一個字符轉(zhuǎn)換為整數(shù),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2017-12-12
  • 基于vue寫一個全局Message組件的實現(xiàn)

    基于vue寫一個全局Message組件的實現(xiàn)

    這篇文章主要介紹了基于vue寫一個全局Message組件的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • Vue.js中vue-property-decorator的使用方法詳解

    Vue.js中vue-property-decorator的使用方法詳解

    vue-property-decorator是一個用于在Vue.js中使用TypeScript裝飾器的庫,它能夠簡化 Vue 組件的定義,使代碼更加簡潔和可維護(hù),它能夠簡化Vue組件的定義,使代碼更加簡潔和可維護(hù),本文將深入探討vue-property-decorator的使用方法,并展示如何在Vue.js項目中應(yīng)用它
    2024-08-08
  • vite創(chuàng)建一個標(biāo)準(zhǔn)vue3+ts+pinia項目

    vite創(chuàng)建一個標(biāo)準(zhǔn)vue3+ts+pinia項目

    本文主要介紹了vite創(chuàng)建一個標(biāo)準(zhǔn)vue3+ts+pinia項目,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-05-05
  • 最后說說Vue2 SSR 的 Cookies 問題

    最后說說Vue2 SSR 的 Cookies 問題

    這篇文章主要介紹了最后說說Vue2 SSR 的 Cookies 問題,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-05-05
  • vue給對象添加屬性沒有響應(yīng)式的問題及解決

    vue給對象添加屬性沒有響應(yīng)式的問題及解決

    這篇文章主要介紹了vue給對象添加屬性沒有響應(yīng)式的問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-04-04
  • vue3響應(yīng)式實現(xiàn)readonly從零開始教程

    vue3響應(yīng)式實現(xiàn)readonly從零開始教程

    這篇文章主要為大家介紹了vue3響應(yīng)式實現(xiàn)readonly從零開始教程示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-03-03
  • Vue3的路由守衛(wèi)以及登錄狀態(tài)儲存過程

    Vue3的路由守衛(wèi)以及登錄狀態(tài)儲存過程

    這篇文章主要介紹了Vue3的路由守衛(wèi)以及登錄狀態(tài)儲存過程,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • 解決vue中對象屬性改變視圖不更新的問題

    解決vue中對象屬性改變視圖不更新的問題

    下面小編就為大家分享一篇解決vue中對象屬性改變視圖不更新的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-02-02

最新評論

揭东县| 潢川县| 枣强县| 诏安县| 和顺县| 祁门县| 盐边县| 聂拉木县| 扎赉特旗| 尚志市| 绥滨县| 竹北市| 高唐县| 朝阳县| 定安县| 天长市| 始兴县| 黑河市| 即墨市| 渭南市| 兰考县| 繁峙县| 大荔县| 迁西县| 闵行区| 瑞金市| 汝南县| 拉萨市| 东安县| 库尔勒市| 若羌县| 福清市| 区。| 哈密市| 曲周县| 五家渠市| 东莞市| 靖远县| 莲花县| 寿阳县| 广河县|