欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

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

正文

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

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

因?yàn)槲覀優(yōu)g覽網(wǎng)頁的設(shè)備屏幕大小不一樣,例如有屏幕大的有屏幕小的手機(jī)。

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

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

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

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

也就是說我們?nèi)绾卧趇Pad上看到和iPhone6/7/8也差不多的效果呢?沒錯(cuò)你肯定想得到,那就是在iPad上的字體太小了,字體要設(shè)置得大一點(diǎn)才行。也就是說要實(shí)現(xiàn)字體的大小和隨著不同屏幕大小的變化。那如何實(shí)現(xiàn)在不同屏幕大小下,讓字體大小也不一樣呢?
那就是利用媒體查詢根據(jù)不同的屏幕設(shè)置各種屏幕寬度下的根元素font-size,然后布局使用rem代替px為長度單位,從而實(shí)現(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 是一個(gè)相對(duì)根元素(html)的長度單位px 是一個(gè)絕對(duì)長度單位em 同樣也是一個(gè)相對(duì)長度單位,只不過相對(duì)的是父元素如上面所設(shè)置的將html的font-szie設(shè)置為86px, 那么1rem就等于86px。

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

這個(gè)就得找一下各個(gè)屏幕尺寸下的代表機(jī)型,然后以其中一個(gè)為標(biāo)準(zhǔn),計(jì)算出其他的。一般是以iPhone6/7/8為標(biāo)準(zhǔn),為什么?因?yàn)楝F(xiàn)在設(shè)計(jì)稿大多是以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)式布局實(shí)現(xiàn)的思路,同時(shí)是基于rem來實(shí)現(xiàn)的,rem不僅僅只用于font-size來設(shè)置字體大小,如果你只是設(shè)置字體變大,盒子的寬度這些還是用px那就會(huì)出問題。凡是可以設(shè)置數(shù)值的屬性都可以用rem為單位,例如width、 height...?;趓em的響應(yīng)式布局是整個(gè)頁面所有的長度單位都使用rem,這只是實(shí)現(xiàn)響應(yīng)式布局的一種方式。

完結(jié)感想

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

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

相關(guān)文章

  • vue-element-admin配置小結(jié)

    vue-element-admin配置小結(jié)

    本文主要介紹了vue-element-admin配置小結(jié),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • vue中動(dòng)態(tài)添加class類名的方法

    vue中動(dòng)態(tài)添加class類名的方法

    今天小編就為大家分享一篇vue中動(dòng)態(tài)添加class類名的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-09-09
  • vue實(shí)現(xiàn)動(dòng)態(tài)路由的方法及路由原理解析

    vue實(shí)現(xiàn)動(dòng)態(tài)路由的方法及路由原理解析

    這篇文章主要介紹了路由原理及vue實(shí)現(xiàn)動(dòng)態(tài)路由,Vue Router 提供了豐富的 API,可以輕松地實(shí)現(xiàn)路由功能,并支持路由參數(shù)、查詢參數(shù)、命名路由、嵌套路由等功能,可以滿足不同應(yīng)用程序的需求,需要的朋友可以參考下
    2023-06-06
  • Vue?設(shè)置圖片不轉(zhuǎn)為base64的方式

    Vue?設(shè)置圖片不轉(zhuǎn)為base64的方式

    這篇文章主要介紹了Vue實(shí)現(xiàn)設(shè)置圖片不轉(zhuǎn)為base64的方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • Vue數(shù)字輸入框組件示例代碼詳解

    Vue數(shù)字輸入框組件示例代碼詳解

    很多朋友經(jīng)常遇到這樣的功能,只允許輸入數(shù)字,允許設(shè)置初始值、最大值、最小值,今天小編給大家分享示例代碼給大家介紹vue數(shù)字輸入框功能,感興趣的朋友一起看看吧
    2020-01-01
  • 詳解vue結(jié)合el-table實(shí)現(xiàn)表格小計(jì)總計(jì)需求(summary-method)

    詳解vue結(jié)合el-table實(shí)現(xiàn)表格小計(jì)總計(jì)需求(summary-method)

    這篇文章主要介紹了vue結(jié)合el-table實(shí)現(xiàn)表格小計(jì)總計(jì)需求(summary-method),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2024-01-01
  • 詳解如何更好的使用module vuex

    詳解如何更好的使用module vuex

    這篇文章主要介紹了詳解如何更好的使用module vuex,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2019-03-03
  • vue-router啟用history模式下的開發(fā)及非根目錄部署方法

    vue-router啟用history模式下的開發(fā)及非根目錄部署方法

    這篇文章主要介紹了vue-router啟用history模式下的開發(fā)及非根目錄部署方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-12-12
  • 簡(jiǎn)單了解vue中的v-if和v-show的區(qū)別

    簡(jiǎn)單了解vue中的v-if和v-show的區(qū)別

    這篇文章主要介紹了簡(jiǎn)單了解vue中的v-if和v-show的區(qū)別,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-10-10
  • Vue表單驗(yàn)證插件的制作過程

    Vue表單驗(yàn)證插件的制作過程

    這篇文章主要為大家詳細(xì)介紹了Vue表單驗(yàn)證插件的制作過程,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-04-04

最新評(píng)論