码迷,mamicode.com
首页 > Web开发 > 详细

calc() 计算CSS属性值

时间:2017-11-20 17:37:52      阅读:330      评论:0      收藏:0      [点我收藏+]

标签:百分比   数学   个数   小数   规则   好处   就是   设置   混合   

calc()是css3的一个新增的功能,用来指定元素的长度。比如说,你可以使用calc()给元素的border、margin、pading、font-size和width等属性设置动态值。calc()最大的好处就是用在流体布局上,可以通过calc()计算得到元素的宽度。

calc()语法:

加 (+)、减(-)、乘(*)、除(/),注意的是:乘数中至少要有一个是 <number> 类型的、被除数(/右面的数)必须是 <number> 类型的

calc()的运算规则
calc()使用通用的数学运算规则,但是也提供更智能的功能:

  1. 使用“+”、“-”、“*” 和 “/”四则运算;
  2. 可以使用百分比、px、em、rem等单位;
  3. 可以混合使用各种单位进行计算;
  4. 表达式中有“+”和“-”时,其前后必须要有空格,如”widht: calc(100% + 5px)”;
  5. 表达式中有“*”和“/”时,其前后可以没有空格,但建议留有空格。

calc()在less文件中的坑:

在Less里加入calc时确发现了有点问题,我在Less中这么写:

div {width : calc(100% - 250px);} 

结果Less把这个当成运算式去执行了,结果给我解析成这样:

div{width: calc(-150%);}

顿时懵逼,后来各种查度娘,才知道是由于less的计算方式跟calc方法有重叠,两者在一起有冲突,于是,在Less中把calc的写法改写成下面这样:

div {width: calc(100% - 250px);}

顺利通过编译

然而,把250px替换为一个变量,怎么写呢?

div {
  @diff : 250px;
  width : calc(~"100% - @{diff}");
  }

搞定!

calc() 计算CSS属性值

标签:百分比   数学   个数   小数   规则   好处   就是   设置   混合   

原文地址:http://www.cnblogs.com/yuanxinghuo/p/7867043.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!