1、calc是什么?

calc是英文单词calculate(计算)的缩写,用于动态计算长度值。

  • calc()函数支持 "+", "-", "*", "/" 运算;
  • ​+ 和 ​​​​- 运算符的两边必须始终要有空白符。​​比如 ​​calc(50% -8px) 会被解析成为一个无效的表达式:一个百分比后跟一个负数长度值。​​而 calc(8px + -50%) ​​会被解析成为一个长度后跟一个加号再跟一个负百分比。​* 和 / 运算符不需要空白符,但考虑到统一性,仍然推荐加上空白符。
  • 可以使用百分比、px、em、rem等单位;

2、浏览器兼容性

​http://caniuse.com/#search=calc​

CSS3 calc()函数使用_html

3、calc使用

calc()主要应用在流体布局上,可以通过calc()计算得到元素的宽度。

calc()根据给定百分比、em、px和rem单位值计算出其宽度或者高度,比如说“width:calc(50% + 2em)”,这样一来你就不用考虑元素DIV的宽度值到底是多少,而把这个烦人的任务交由浏览器去计算。


4、示例代码



<!DOCTYPE html>
<html>

<head>
<meta charset="utf-8" />
<title>CSS3 calc()函数应用</title>
<style>
* {
padding: 0;
margin: 0;
}

.test {
width: calc(100% - 50px);
border: 1px solid red;
}
</style>
</head>

<body>
<div class="test">我的宽度为100% - 50px</div>
</body>

</html>


效果:

CSS3 calc()函数使用_空白符_02