less里面calc() 語法


轉載 Less的好處不用說大家都知道,確實讓寫 CSS的人不在痛苦了,最近我在Less里加入calc時確發現了有點問題,我在Less中這么寫:

  div {
  width : calc( 100% - 30px);
  }
  結果Less把這個當成運算式去執行了,結果給我解析成這樣:

  div {
  width: calc(70%);
  }
  於是,我把Less改寫成這樣:

  div {
  width : calc(~" 100% - 30px");
  }
  解析結果正常:

  div {
  width: calc( 100% - 30px);
  }
  然而,把30px替換為一個變量,怎么寫呢?

  div {
  @diff : 30px;
  width : calc(~"100% - " + @diff);
  }
  這么寫Webstorm沒有報錯,但grunt-less報錯了:

  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卻老是提示語法錯誤,雖然也能編譯但看着文件有一個錯誤提示心里老感覺不爽,找半天也沒發現Webstorm如何調試語法提示錯誤設置

  於是,改成如下寫法:

  div {
  @diff : 30px;
  width : calc(~"100% - @{diff}");
  }
  這種寫法又能編譯,Webstorm里又不報錯,所以我比較喜歡用這種寫法。
  支持一下(2)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM