CSS3之calc()

作者:邹阳 | 发表于:2016-04-17 11:30:32

阅读量:(195) | 所属栏目:编程

calc()  对属性值进行四则运算  IE10+标准浏览器支持

需要注意的是,运算符前后都需要保留一个空格,例如:width: calc(100%  -  10px);  运算符减号前后有空格

任何长度值都可以使用calc()函数进行计算;

calc()函数支持 "+", "-", "*", "/" 运算;

calc()函数使用标准的数学运算优先级规则;

应用举例:实现滚动条出现页面不跳动
给居中定宽主体的父级(例如body等,如果没有,创建一个)添加一句css就可以实现页面自适应滚动条的居中不跳动:margin-left: calc(100vw - 100%);    或者    padding-left: calc(100vw - 100%);

解释:100vw相对于浏览器的window.innerWidth,是浏览器的内部宽度,注意,滚动条宽度也计算在内!而100%是可用宽度,是不含滚动条的宽度。
于是,calc(100vw - 100%)就是浏览器滚动条的宽度大小(如果有,如果没有滚动条则是0)!左右都有一个滚动条宽度(或都是0)被占用,主体内容就可以永远居中浏览器啦,从而没有任何跳动!



回复内容:(还能输入1000字)
验 证 码: