vant


一、表單驗(yàn)證問題

? ? 插件VeeValidate參考:

? ? ? ? 代碼測(cè)試:https://codesandbox.io/s/y3504yr0l1?initialpath=%2F%23%2Fform&module=%2Fsrc%2Fcomponents%2FForm.vue

? ? ? ? 文檔:https://baianat.github.io/vee-validate/guide/rules.html#decimal

二捆毫、分辨率問題-js

? ? 2.1 圖片:

? ? ? ? 根據(jù)js獲取獲取設(shè)備像素比去require不同的圖片闪湾。

/** * 獲取設(shè)備像素比 */
getDevicePixelRatio: function () {
? ? ?let ratio = 1;
? ? ?if (window.screen.systemXDPI !== undefined && window.screen.logicalXDPI !== undefined && window.screen.systemXDPI > window.screen.logicalXDPI)
? ? ? {
? ? ? ? ? ? ?ratio = window.screen.systemXDPI / window.screen.logicalXDPI;
? ? ? ? } else if (window.devicePixelRatio !== undefined) {
? ? ? ? ? ? ? ratio = window.devicePixelRatio;
? ? ? ?}
? ? ? ?return ratio;
?}

? ? 2.2 import動(dòng)態(tài)引入:

? ? ? ? ?绩卤?途样?

三江醇、分辨率問題-css

? ? 3.1 圖片:

? ? ? ? 通過mixin.less里@media來實(shí)現(xiàn)不同分辨率圖片的調(diào)用

? ? ? ? /*
? ? ? ? *功能:不同視口調(diào)用不同的背景圖片
? ? ? ? *使用例如:? .bg-img('../../assets/img/page-bg','png');?
???? ? ?*/
? ? ? ?.bg-img(@url,@imgtype) {

? ? ? ? ? ? background-image: url("@{url}.@{imgtype}");

? ? ? ? ? ? @media (-webkit-min-device-pixel-ratio: 2), (min-device-pixel-ratio: 2) {

? ? ? ? ? ? ? ? background-image: url("@{url}@2x.@{imgtype}");

? ? ? ? ? ? }

? ? ? ? ? ? @media (-webkit-min-device-pixel-ratio: 3), (min-device-pixel-ratio: 3) {

? ? ? ? ? ? ? ? background-image: url("@{url}@3x.@{imgtype}");

? ? ? ? ? ? }

? ? ? ? }

? ? 3.2 字體、元素寬高何暇;

? ? ? ? lib-flexible解決移動(dòng)端適配的問題(安裝到生產(chǎn)環(huán)境)

? ? ? ? ? ? url:https://blog.csdn.net/yanzhi_2016/article/details/80461951

? ? ? ? ? ? 同時(shí)會(huì)自動(dòng)設(shè)置html的font-size為屏幕寬度除以10陶夜,也就是1rem等于html根節(jié)點(diǎn)的font-size。

? ? ? ? ? ? 假如設(shè)計(jì)稿的寬度是750px裆站,此時(shí)1rem應(yīng)該等于75px条辟。假如量的某個(gè)元素的寬度是150px,那么在css里面定義這個(gè)元素的寬度就是 width: 2rem宏胯。

? ? ? ? ? ? 假如設(shè)計(jì)稿的寬度是375px羽嫡,此時(shí)1rem應(yīng)該等于37.5px。假如量的某個(gè)元素的寬度是150px肩袍,那么在css里面定義這個(gè)元素的寬度就是 width: 4rem

? ? ? ? ? ? 其實(shí)這些無需自己計(jì)算杭棵,按照設(shè)計(jì)稿標(biāo)注的px寫,實(shí)時(shí)編譯時(shí)會(huì)自動(dòng)轉(zhuǎn)成rem了牛。? ? ? ? ?

? ? ? ? ? ? 注意:

? ? ? ? ? ? ? ? 1.檢查一下html文件的head中颜屠,如果有 meta name="viewport"標(biāo)簽辰妙,需要將他注釋掉鹰祸,因?yàn)槿绻羞@個(gè)標(biāo)簽的話,lib-flexible就會(huì)默認(rèn)使用這個(gè)標(biāo)簽密浑。而我們要使用lib-flexible自己生成的 meta name="viewport"來達(dá)到高清適配的效果蛙婴。

? ? ? ? ? ? ? ? 2.因?yàn)閔tml的font-size是根據(jù)屏幕寬度除以10計(jì)算出來的,所以我們需要設(shè)置頁(yè)面的最大寬度是10rem尔破。

? ? ? ? ? ? ? ? 3.此方法只能將.vue文件style標(biāo)簽中的px轉(zhuǎn)成rem街图,不能將script標(biāo)簽和元素style里面定義的px轉(zhuǎn)成rem

? ? ? ? ? ? ? ? 4.如果在.vue文件style中的某一行代碼不希望被轉(zhuǎn)成rem,只要在后面寫上注釋 /* no*/就可以了懒构。如果個(gè)別地方不想轉(zhuǎn)化px餐济。可以簡(jiǎn)單的使用大寫的 PX 或 Px 胆剧。

四絮姆、vant主題定制

? ? 變量定制:https://github.com/youzan/vant/blob/dev/src/style/var.less

五、js動(dòng)態(tài)設(shè)置html字體

? ? 在沒有使用vant的px轉(zhuǎn)rem之前需要手動(dòng)計(jì)算后是設(shè)置html字體大小秩霍,現(xiàn)在好了篙悯,有了vant的這個(gè)功能,無需再做下列操作了铃绒,記錄一下歷史鸽照!

? ? /*

? ? *重設(shè)html字體大小(目前沒用颠悬,有postcss-pxtorem和lib-flexible方案替代)

? ? */

? ? resetHtmlFontSize: function () {

? ? ? ? var h = Math.max(document.documentElement.clientHeight, window.innerHeight || 0);

? ? ? ? var w = Math.max(document.documentElement.clientWidth, window.innerWidth || 0);

? ? ? ? var width = w > h ? h : w;

? ? ? ? width = width > 720 ? 720 : width

? ? ? ? var fz = ~~(width * 100000 / 36) / 10000;

? ? ? ? document.getElementsByTagName("html")[0].style.cssText = 'font-size: ' + fz + "px";

? ? ? ? var realfz = ~~(+window.getComputedStyle(document.getElementsByTagName("html")[0]).fontSize.replace('px', '') * 10000) / 10000;

? ? ? ? if (fz !== realfz) {

? ? ? ? ? ? document.getElementsByTagName("html")[0].style.cssText = 'font-size: ' + fz * (fz / realfz) + "px";

? ? ? ? }

? ? }

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末矮燎,一起剝皮案震驚了整個(gè)濱河市定血,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌诞外,老刑警劉巖糠悼,帶你破解...
    沈念sama閱讀 216,997評(píng)論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異浅乔,居然都是意外死亡倔喂,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,603評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門靖苇,熙熙樓的掌柜王于貴愁眉苦臉地迎上來席噩,“玉大人,你說我怎么就攤上這事贤壁〉渴啵” “怎么了?”我有些...
    開封第一講書人閱讀 163,359評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵脾拆,是天一觀的道長(zhǎng)馒索。 經(jīng)常有香客問我,道長(zhǎng)名船,這世上最難降的妖魔是什么绰上? 我笑而不...
    開封第一講書人閱讀 58,309評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮渠驼,結(jié)果婚禮上蜈块,老公的妹妹穿的比我還像新娘。我一直安慰自己迷扇,他們只是感情好百揭,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,346評(píng)論 6 390
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著蜓席,像睡著了一般器一。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上厨内,一...
    開封第一講書人閱讀 51,258評(píng)論 1 300
  • 那天祈秕,我揣著相機(jī)與錄音,去河邊找鬼隘庄。 笑死踢步,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的丑掺。 我是一名探鬼主播获印,決...
    沈念sama閱讀 40,122評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了兼丰?” 一聲冷哼從身側(cè)響起玻孟,我...
    開封第一講書人閱讀 38,970評(píng)論 0 275
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎鳍征,沒想到半個(gè)月后黍翎,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,403評(píng)論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡艳丛,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,596評(píng)論 3 334
  • 正文 我和宋清朗相戀三年匣掸,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片氮双。...
    茶點(diǎn)故事閱讀 39,769評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡碰酝,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出戴差,到底是詐尸還是另有隱情送爸,我是刑警寧澤,帶...
    沈念sama閱讀 35,464評(píng)論 5 344
  • 正文 年R本政府宣布暖释,位于F島的核電站袭厂,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏球匕。R本人自食惡果不足惜纹磺,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,075評(píng)論 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望谐丢。 院中可真熱鬧爽航,春花似錦、人聲如沸乾忱。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,705評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)窄瘟。三九已至,卻和暖如春趟卸,著一層夾襖步出監(jiān)牢的瞬間蹄葱,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,848評(píng)論 1 269
  • 我被黑心中介騙來泰國(guó)打工锄列, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留图云,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,831評(píng)論 2 370
  • 正文 我出身青樓邻邮,卻偏偏與公主長(zhǎng)得像竣况,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子筒严,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,678評(píng)論 2 354

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