亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

javascript用rem來做響應(yīng)式開發(fā)

 更新時間:2018年01月13日 09:25:19   作者:yuezhongbao  
這篇文章主要介紹了javascript用rem來做響應(yīng)式開發(fā),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

電腦版的商城昨晚做完了,今天趕著做手機端的,提到手機端的網(wǎng)站第一個想到的就是要 適應(yīng)不同手機屏幕的寬度,保證在不同手機上都能正常顯示給用戶,我之前做這類網(wǎng)站都是無腦引進bootstrap的。但前一個項目做完之后我發(fā)現(xiàn)bootstrap雖好,但里面的各種樣式我利用的很少,最多用到它排版,當(dāng)網(wǎng)站最后上傳的時候你會發(fā)現(xiàn),即使壓縮之后,它也會占用相當(dāng)大的一部分,所以這次我想自己用原生寫,響應(yīng)式開發(fā)(我現(xiàn)在知道的尚淺)目前我了解有

1.百分比法:

顧名思義,頁面的元素的margin,padding,width,height,等等都用%來計算,CSS中的百分比中的百指的是什么,指的是父元素,所有百分比都是這樣的。子元素寬度50%,那么父元素的寬度就是百,子元 素的padding-left:50%,父元素的寬度是百,子元素的margin-top:20%,那么父元素的高是百。所以body默認寬度是屏幕寬度 (PC中指的是瀏覽器寬度)子孫元素按百分比定位(或指定尺寸)就可以了,這只適合布局簡單的頁面,復(fù)雜的頁面實現(xiàn)很困難。

2.媒體查詢:

這個是css3中給出的,我們要解決的問題是適應(yīng)手機屏幕,這個媒體查詢正是為解決這個問題而生,媒體查詢的功能就是為不同的媒體設(shè)置不同的css樣 式,這里的“媒體”包括頁面尺寸,設(shè)備屏幕尺寸等,最常用的形式

phone:@media screen and (max-width:767px) {/手機中樣式/}

pad:@media screen and (max-width:991px)and(min-width:768) {/平板中樣式/}

pc:@media screen and (min-width:992px){/電腦中樣式/}

...(你還可以設(shè)置更多節(jié)點)

用媒體查詢的話要保證每個像素下都有對應(yīng)的適配效果顯然你要設(shè)置更小的寬度范圍;

3.還有就是css3的單位rem:

rem就是將根節(jié)點html的font-size的值作為整個頁面的基準(zhǔn)尺寸,例如<html style="font-size:10px">那么1rem=10px;如何做到適配呢?那就要用到j(luò)s在頁面加載時獲取window的寬度(瀏覽器窗口的寬度)$(window).width();在開發(fā)手機頁面的時候,一般我們設(shè)置最大寬度為640px,因為640px可以保證在至今最寬的手機上顯示時網(wǎng)頁兩端剛好貼合屏幕,那接下來我就舉一個小例子。

屏幕放大縮小這三個div也同樣還在一行等比放大縮小

html

<div class="container">
  <div class="box">1</div>
  <div class="box">2</div>
  <div class="box">3</div>
</div>

css

<style>
  html{font-size: 20px;}
  .container{
    max-width: 640px;
    border:1px solid red;
    margin:0 auto;
    overflow: hidden;
    box-sizing: border-box;
  }
  .box{
    float: left;
    width:10.6rem;
    //我這里設(shè)置html的font-size:20px;最大
寬為640px,即相當(dāng)于640/20=32rem;一行有3個div,所以每個div寬10.6rem

你也可以像論壇里面講的那樣設(shè)置html的font-size:62.5%;因為瀏覽器默認像素16px;乘以62.5%之后為整數(shù)10px;方便計算

    height:10.6rem;
    border:1px solid #000;
    box-sizing: border-box;
  }
</style>

js

<script>
 window.onresize = window.onload = function () {
   var w = $(window).width();
   if(w<640){
     var size = 20*w/640;//640的時候
對應(yīng)html的font-size為20,那么寬度為w是對應(yīng)
的font-size可這么求
     $('html').css('fontSize',size+'px');
   }
 }
</script>

注意這里有一個小坑,當(dāng)你把這個小demo拿到谷歌瀏覽器里面驗證的時候,你會發(fā)現(xiàn)開始這3個div會隨著你瀏覽器窗口縮小而縮小,到達某個值后就不動了,原因是谷歌瀏覽器默認支持html的font-size最小值為10px;在小于這個值就不會再小了,這是我當(dāng)時碰到的問題花了快兩個小時上網(wǎng)找,一遍遍演示也都沒想明白,最后終于查到這么個非人為原因.

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • JS iFrame加載慢怎么解決

    JS iFrame加載慢怎么解決

    這篇文章主要介紹了JS iFrame加載慢的解決方法,非常實用,感興趣的朋友一起學(xué)習(xí)吧
    2016-05-05
  • 原生JS實現(xiàn)特效留言框

    原生JS實現(xiàn)特效留言框

    這篇文章主要為大家詳細介紹了原生JS實現(xiàn)特效留言框,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • fullCalendar日歷插件玩法示例解析

    fullCalendar日歷插件玩法示例解析

    這篇文章主要介紹了fullCalendar日歷插件玩法示例解析,包括Fullcalendar安裝,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2024-01-01
  • 詳解http訪問解析流程原理

    詳解http訪問解析流程原理

    這篇文章主要介紹了詳解http訪問解析流程原理的相關(guān)資料,希望通過本文能幫助到大家,讓大家理解掌握這部分內(nèi)容,需要的朋友可以參考下
    2017-10-10
  • js 關(guān)鍵詞高亮(根據(jù)ID/tag高亮關(guān)鍵字)案例介紹

    js 關(guān)鍵詞高亮(根據(jù)ID/tag高亮關(guān)鍵字)案例介紹

    關(guān)鍵詞高亮在開發(fā)中會帶來很多的方便,關(guān)鍵詞高亮包括:根據(jù)ID高亮關(guān)鍵字/根據(jù)Tag名高亮關(guān)鍵字等等,感興趣的朋友可以了解下,希望本文對你有所幫助
    2013-01-01
  • JavaScript Event學(xué)習(xí)補遺 addEventSimple

    JavaScript Event學(xué)習(xí)補遺 addEventSimple

    這里有個addEventSimple和removeEventSimple函數(shù),有時候需要不那么顯眼的事件處理程序的時候我就用這兩個函數(shù)注冊。
    2010-02-02
  • Express與NodeJs創(chuàng)建服務(wù)器的兩種方法

    Express與NodeJs創(chuàng)建服務(wù)器的兩種方法

    本文主要介紹了NodeJs創(chuàng)建Web服務(wù)器;Express創(chuàng)建Web服務(wù)器的兩種方法,具有一定的參考價值,下面跟著小編一起來看下吧
    2017-02-02
  • JavaScript Window 打開新窗口(window.location.href、window.open、window.showModalDialog)

    JavaScript Window 打開新窗口(window.location.href、windo

    本文主要介紹了JavaScript Window 打開新窗口的三種方式,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-05-05
  • bootstrap table插件的分頁與checkbox使用詳解

    bootstrap table插件的分頁與checkbox使用詳解

    這篇文章主要為大家詳細介紹了bootstrap table插件的分頁與checkbox使用詳解,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • JS實現(xiàn)簡單省市二級聯(lián)動

    JS實現(xiàn)簡單省市二級聯(lián)動

    這篇文章主要為大家詳細介紹了JS實現(xiàn)簡單的省市二級聯(lián)動,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-11-11

最新評論