溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

html5響應(yīng)式中px單位的示例分析

發(fā)布時(shí)間:2021-06-10 10:05:37 來源:億速云 閱讀:160 作者:小新 欄目:web開發(fā)

這篇文章主要為大家展示了“html5響應(yīng)式中px單位的示例分析”,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“html5響應(yīng)式中px單位的示例分析”這篇文章吧。

移動(dòng)端h6響應(yīng)式方案最近這幾年用得最多的最多的就是rem方案了。這個(gè)需要計(jì)算根元素的font-size來實(shí)現(xiàn)響應(yīng)式。

但這種方案也有一個(gè)缺點(diǎn),那就是font-size不為整數(shù)的時(shí)候一些字體使用rem單位會(huì)導(dǎo)致字體顯示的大小有問題,對(duì)視覺還原要求比較高的項(xiàng)目來說這還是令前端開發(fā)挺頭疼的一件事的。

解決前端響應(yīng)式無非就是在不同的設(shè)備下可以正常展示,這里介紹一種不需要rem方式的響應(yīng)式方案。直接使用px,這里說的是基于750px的設(shè)計(jì)稿。設(shè)計(jì)稿中你量出來是多少px,樣式中

直接寫多少px。這樣是不是很快捷,也不需要rem換算。

  1. transform

  2. transform-origin

這里其實(shí)就是用到了transform的scale縮放頁(yè)面大小來實(shí)現(xiàn)響應(yīng)式。

核心代碼:
 

let screenMatch = () => {
            document.body.style.setProperty('visibility', 'hidden')
            let page = document.getElementById("page");
            let _scale = window.outerWidth/750;
            
            page.style.setProperty("transformOrigin", "0 0");
            page.style.setProperty("transform", "scale("+ _scale + ")");
            //兼容ios8
            page.style.setProperty("-webkit-transform-origin", "0 0");
            page.style.setProperty("-webkit-transfrom", "scale("+ _scale + ")");
            setTimeout(() => {
  
                page.style.setProperty("transformOrigin", "0 0");
                page.style.setProperty("transform", "scale("+ _scale + ")");
                //兼容ios8
                page.style.setProperty("-webkit-transform-origin", "0 0");
                page.style.setProperty("-webkit-transfrom", "scale("+ _scale + ")");
                document.body.style.setProperty('visibility', 'visible')
            }, 100);

        }
        screenMatch();
        window.onresize = screenMatch;

上述代碼中id為page的是整個(gè)頁(yè)面元素開始的跟節(jié)點(diǎn),body下的第一個(gè)元素。這里body/html要設(shè)置min-height:100%;height:100%;

其實(shí)我們?cè)谛〕绦蛑幸部梢允褂胮x單位,但是小程序中使用transform的時(shí)候會(huì)有一些字體鋸齒的bug,最后換了zoom屬性就好了,同時(shí)使用-webkit-zoom做兼容。核心代碼跟h6的差別不大同樣放的是縮放大小。

以上是“html5響應(yīng)式中px單位的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI