根據UI設計完成自適應頁面(包括字體大小)


    在自適應這塊,首先想到的就是rem這個相對於HTML根元素的單位。但是現在的問題是如何設置基准的fontSize可以避免麻煩切復雜的換算。理所當然的想到基基准的fontsize(即HTML的fontsize)為100px 的話,計算起來就會相對的簡單許多。思路沒問題,那么又如何根據一張特定的UI設計圖寫出可以自適應各種屏幕的頁面呢。

  我們假如使用的設計圖是寬度為1920px,那么我們的基准fontsize應該怎么根據屏幕的大小定呢。這個基准fonzise肯定不是一個定值,因為屏幕大小不一致啊。在此,我們就需要根據屏幕的大小來動態設置基准的fontsize了。

  先看這樣一段代碼:

   var remWindowWidth=19.2

   document.getElementsByTagName('html')[0].style.fontSize=document.documentElement.clientWidth/remWindowWidth+'px';

   window.onresize = function(){
                  document.getElementsByTagName('html')[0].style.fontSize=document.documentElement.clientWidth/remWindowWidth+'px';
          }

    有沒有看懂?這不就是動態設置基准的fontsize么?但是為什么要除以19.2呢?因為我們參考的UI設計圖是1920px的呀,要是UI設計圖是1360px,那么就會是屏幕的寬度除以13.6.即remWindowWidth = UI設計圖的寬度/100,這樣的話基准的fontzise在與設計圖相同分辨率的情況下就是100px了。至於在別的情況下是不是100px,我們就不用管那么多了,因為在不同分辨率下的基准是不一樣的,我們只需要根據設計圖走就好了。別的分辨率情況下會自動轉化的。

  還有,這個動態設置基准的方法一定要寫在文檔的最上面哦,要不然都沒有基准,怎么顯示rem的計算值呀


免責聲明!

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



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