vue3.0中使用postcss-pxtorem

postcss-pxtorem是PostCSS的插件吁系,用于將像素單元生成rem單位。

前端開發(fā)還原設(shè)計(jì)稿的重要性毋庸置疑,目前應(yīng)用的單位最多還是rem,然而每次在制作過程中需要自己計(jì)算rem值,為了能夠直接按照設(shè)計(jì)圖的尺寸開發(fā)阵苇,并且能自動編譯轉(zhuǎn)換成rem,下面就來分享下postcss-pxtorem的使用感论。

1.安裝依賴

npm install postcss-pxtorem -D

2.設(shè)置規(guī)則(更改postcss.config.js,該文件為使用vue-cli3自動創(chuàng)建的文件)

module.exports = {
  plugins: {
    'autoprefixer': {
      browsers: ['Android >= 4.0', 'iOS >= 7']
    },
    'postcss-pxtorem': {
      rootValue: 16,//結(jié)果為:設(shè)計(jì)稿元素尺寸/16绅项,比如元素寬320px,最終頁面會換算成 20rem
      propList: ['*']
    }
  }
}

操作到這里移動端自動適配了嗎,當(dāng)然不能比肄,目前只是將px單位轉(zhuǎn)換成rem,移動端適配還差最后一步,初接觸rem理解起來有點(diǎn)懵快耿,后來發(fā)現(xiàn)了一個好理解的方法,下面來分享一下芳绩。

現(xiàn)在我們作一個實(shí)驗(yàn)掀亥,你可以新建一個網(wǎng)頁,并寫入如下代碼:

<div class="test">
    <p class="hello">Hello</p>
</div>

然后給html一個基本的樣式:

.test{
    width:320px;
    height:160px;
    background-color: bisque;
    text-align: center妥色;
}
.hello{
    color:red;
}

上邊我們使用了還是傳統(tǒng)的使用px作為單位搪花,我們在移動端調(diào)試模式iphone5環(huán)境查看一下。會發(fā)現(xiàn)div的寬度是正好的,我們再查看一下字體撮竿,發(fā)現(xiàn)大小是16px吮便。
我們現(xiàn)在可以把CSS中的px單位換成rem單位來進(jìn)行測試。因?yàn)閔tml根元素的字體大小是16px幢踏,那么換成rem單位髓需,直接除以16就好。

.test{
    width:20rem;
    height:10rem;
    background-color: bisque;
    text-align: center惑折;
}
.hello{
    color:red;
    font-size:1rem;
}

明白了REM的原理后授账,我們就可以使用這個特點(diǎn)來進(jìn)行適應(yīng)布局了,這也是現(xiàn)在比較主流的移動端web適配方案惨驶。src目錄下,新建 libs/rem.js 輸入如下代碼

// 設(shè)置 rem 函數(shù)
function setRem () {

    // 320 默認(rèn)大小16px; 320px = 20rem ;每個元素px基礎(chǔ)上/16
    let htmlWidth = document.documentElement.clientWidth || document.body.clientWidth;
//得到html的Dom元素
    let htmlDom = document.getElementsByTagName('html')[0];
//設(shè)置根元素字體大小
    htmlDom.style.fontSize= htmlWidth/20 + 'px';
}
// 初始化
setRem();
// 改變窗口大小時重新設(shè)置 rem
window.onresize = function () {
    setRem()
}

在main.js中引入rem.js

import './libs/rem.js';

最后刷新頁面看下敛助,就會發(fā)現(xiàn)原本用px的單位已經(jīng)自動換算成了rem;

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末粗卜,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子纳击,更是在濱河造成了極大的恐慌续扔,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,273評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件焕数,死亡現(xiàn)場離奇詭異纱昧,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)堡赔,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,349評論 3 398
  • 文/潘曉璐 我一進(jìn)店門识脆,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人善已,你說我怎么就攤上這事灼捂。” “怎么了换团?”我有些...
    開封第一講書人閱讀 167,709評論 0 360
  • 文/不壞的土叔 我叫張陵悉稠,是天一觀的道長。 經(jīng)常有香客問我艘包,道長的猛,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,520評論 1 296
  • 正文 為了忘掉前任想虎,我火速辦了婚禮卦尊,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘磷醋。我一直安慰自己猫牡,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,515評論 6 397
  • 文/花漫 我一把揭開白布邓线。 她就那樣靜靜地躺著淌友,像睡著了一般煌恢。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上震庭,一...
    開封第一講書人閱讀 52,158評論 1 308
  • 那天瑰抵,我揣著相機(jī)與錄音,去河邊找鬼器联。 笑死二汛,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的拨拓。 我是一名探鬼主播肴颊,決...
    沈念sama閱讀 40,755評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼渣磷!你這毒婦竟也來了婿着?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,660評論 0 276
  • 序言:老撾萬榮一對情侶失蹤醋界,失蹤者是張志新(化名)和其女友劉穎竟宋,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體形纺,經(jīng)...
    沈念sama閱讀 46,203評論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡丘侠,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,287評論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了逐样。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蜗字。...
    茶點(diǎn)故事閱讀 40,427評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖官研,靈堂內(nèi)的尸體忽然破棺而出秽澳,到底是詐尸還是另有隱情,我是刑警寧澤戏羽,帶...
    沈念sama閱讀 36,122評論 5 349
  • 正文 年R本政府宣布担神,位于F島的核電站,受9級特大地震影響始花,放射性物質(zhì)發(fā)生泄漏妄讯。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,801評論 3 333
  • 文/蒙蒙 一酷宵、第九天 我趴在偏房一處隱蔽的房頂上張望亥贸。 院中可真熱鬧,春花似錦浇垦、人聲如沸炕置。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,272評論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽朴摊。三九已至默垄,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間甚纲,已是汗流浹背口锭。 一陣腳步聲響...
    開封第一講書人閱讀 33,393評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留介杆,地道東北人鹃操。 一個月前我還...
    沈念sama閱讀 48,808評論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像春哨,于是被迫代替她去往敵國和親荆隘。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,440評論 2 359

推薦閱讀更多精彩內(nèi)容