對(duì)于前端er來說,Less或Sass已經(jīng)是一項(xiàng)必備的基本技能,有了這個(gè)利器,可以省下前端開發(fā)者的很多編碼時(shí)間,讓你寫CSS如行云流水一般,然后最近我在Less里加入calc時(shí)確發(fā)現(xiàn)了有點(diǎn)問題,我在Less中這么寫:
div {width : calc(100% - 30px);}
結(jié)果Less把這個(gè)當(dāng)成運(yùn)算式去執(zhí)行了,結(jié)果給我解析成這樣:
div {width: calc(70%);}
當(dāng)時(shí)我就郁悶了,怎么會(huì)產(chǎn)生這樣的現(xiàn)象呢?后來各種查,是由于less的計(jì)算方式跟calc方法有重疊,兩者在一起有沖突,于是,我在Less中把calc的寫法改寫成下面這樣:
div {width : calc(~"100% - 30px");}
OK,解析結(jié)果正常:
div {width: calc(100% - 30px);}
然而,把30px替換為一個(gè)變量,怎么寫呢?
div { @diff : 30px; width : calc(~"100% - " + @diff); }
這么寫Webstorm沒有報(bào)錯(cuò),但grunt-less報(bào)錯(cuò)了:
C:\Users\zhong\WebstormProjects\test>grunt less Running "less:development" (less) task >> ParseError: Unrecognised input in style.less on line 4, column 2: >> 3 @diff : 30px; >> 4 width : calc(~"100% - " + @diff); >> 5 } Warning: Error compiling style.less Use --force to continue. Aborted due to warnings.
于是這么寫:
div { @diff : 30px; width : calc(~"100% - " @diff); }
順利編譯過去,但Webstorm卻老是提示語法錯(cuò)誤,雖然也能編譯但看著文件有一個(gè)錯(cuò)誤提示心里老
感覺不爽,找半天也沒發(fā)現(xiàn)Webstorm如何調(diào)試語法提示錯(cuò)誤設(shè)置
于是,改成如下寫法:
div { @diff : 30px; width : calc(~"100% - @{diff}"); }
這種寫法又能編譯,Webstorm里又不報(bào)錯(cuò),所以我比較喜歡用這種寫法,如此,便不會(huì)再有任何問題了。
相信看了這些案例你已經(jīng)掌握了方法,更多精彩請(qǐng)關(guān)注Gxl網(wǎng)其它相關(guān)文章!
相關(guān)閱讀:
html5怎樣做出圖片轉(zhuǎn)圈的動(dòng)畫效果
在h5里手機(jī)端頁面縮放應(yīng)該如何實(shí)現(xiàn)
一定要注意常見的3種HTML5錯(cuò)誤用法
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com