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

CSS像素以及移動端不同屏幕適配問題解決

  發(fā)布時(shí)間:2020-01-13 15:05:37   作者:認(rèn)真學(xué)前端   我要評論
這篇文章主要介紹了CSS像素以及移動端不同屏幕適配問題解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

像素

分辨率

我們通常所說的顯示器分辨率,其實(shí)是指桌面設(shè)定的分辨率,而不是顯示器的物理分辨率。只不過現(xiàn)在液晶顯示器成為主流,由于液晶的顯示原理與CRT不同,只有在桌面分辨率與物理分辨率一致的情況下,顯示效果最佳,所以現(xiàn)在我們的桌面分辨率幾乎總是與顯示器的物理分辨率一致了。

UI稿的像素

UI稿的像素是指物理像素
我們接到的UI設(shè)計(jì)稿例如750px就是物理像素

前端像素

只要兩個(gè)屏幕邏輯像素相同,它們的顯示效果就是相同的。 也就是CSS世界中的px相同,相同物理尺寸的屏幕顯示效果就是相同的

那么在實(shí)際屏幕顯示的時(shí)候他們之間都有神馬關(guān)系呢?

如下圖 當(dāng)我們在網(wǎng)頁上設(shè)置一個(gè)元素的css像素(width:2px;height:2px)時(shí),在dpr=1的顯示器上時(shí),最終會占用一個(gè)四個(gè)物理像素點(diǎn),當(dāng)在dpr=2時(shí)的顯示器上時(shí),會占用16個(gè)物理像素點(diǎn)。由此得出結(jié)論,在不同屏幕下css像素的物理尺寸是一致的,不同的是一個(gè)css像素對應(yīng)的物理像素點(diǎn)個(gè)數(shù)不一樣

不同屏幕下的rem適配方案

<!-- m站移動端適配js -->

  // 適配  物理像素寬750 1rem=100px   
  // clientWidth(實(shí)際的邏輯像素)/375(參照基準(zhǔn)邏輯像素) = fontSize(實(shí)際的1rem像素值)/100(參照的1rem邏輯像素值)
  ;(function(win, doc){
    function change(){
        doc.documentElement.style.fontSize=100*doc.documentElement.clientWidth/375+'px';
    }
    change();
    win.addEventListener('resize', change, false);
  })(window, document);
  // 這樣我們就計(jì)算出實(shí)際不同邏輯像素下1rem的值了
  // 實(shí)際工作中如果UI給是設(shè)計(jì)稿寬度是750px 那么我們就需要在量到的寬度的基礎(chǔ)上除以200
  // 我們在打開控制臺查看元素之間的距離的時(shí)候都是設(shè)計(jì)稿上的一半 設(shè)計(jì)稿的物理像素2px對應(yīng)邏輯像素1px
  // 我司現(xiàn)在的設(shè)計(jì)稿都放在藍(lán)湖上 寬度都是標(biāo)準(zhǔn)的375 那么我們只需要在量得的寬度基礎(chǔ)上除以100就得到實(shí)際的寬度是多少rem

  // 附: 當(dāng)然也有其他適配方案,但是rem原理都是一樣的,除非采用的不是rem方案

為什么蘋果手機(jī)上需要2倍圖或者三倍圖?

以2倍屏為例

原本2*2像素的圖片在2倍屏下 有4*4個(gè)像素點(diǎn)組成 那么多出來需要繪制的像素點(diǎn)的就會在以前周周附近找相似的,所以有了模糊的問題?,F(xiàn)在工作中一般為了圖片高清顯示,都是采用蘋果兩倍圖。

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

相關(guān)文章

最新評論