1.什么是calc()?
calc是英文单词calculate(计算)的缩写,是css3的一个新增的功能,用来指定元素的长度。比如说,你可以使用calc()给元素的border、margin、pading、font-size和width等属性设置动态值。calc()最大的好处就是用在流体布局上,可以通过calc()计算得到元素的宽度。
2.calc()能做什么?
calc()能让你给元素的做计算,你可以给一个div元素,使用百分比、em、px和rem单位值计算出其宽度或者高度,比如说“width:calc(50% + 2em)”,这样一来你就不用考虑元素div的宽度值到底是多少,而把这个烦人的任务交由浏览器去计算。
3.calc()语法
calc()语法非常简单,就像我们小时候学加 (+)、减(-)、乘(*)、除(/)一样,使用数学表达式来表示:

.elm {width: calc(expression);
}

其中"expression"是一个表达式,用来计算长度的表达式。
4.calc()的运算规则
calc()使用通用的数学运算规则,但是也提供更智能的功能:
使用“+”、“-”、“*” 和 “/”四则运算;
可以使用百分比、px、em、rem等单位;
可以混合使用各种单位进行计算;
表达式中有“+”和“-”时,其前后必须要有空格,如"widht: calc(12%+5em)"这种没有空格的写法是错误的;

表达式中有“*”和“/”时,其前后可以没有空格,但建议留有空格。

5.浏览器的兼容性

浏览器对calc()的兼容性还算不错,在IE9+、FF4.0+、Chrome19+、Safari6+都得到较好支持,同样需要在其前面加上各浏览器厂商的识别符,不过可惜的是,移动端的浏览器还没仅有“firefox for android 14.0”支持,其他的全军覆没。
大家在实际使用时,同样需要添加浏览器的前缀

 .elm {/*Firefox*/-moz-calc(expression);/*chrome safari*/-webkit-calc(expression);/*Standard */calc(expression);}

css3中的calc()相关推荐

  1. css3 中的calc用法

    定义与用法 calc() 函数用于动态计算长度值. 1.需要注意的是,运算符前后 都需要保留一个空格,例如:width: calc(100% - 10px): 2.任何长度值都可以使用calc()函数 ...

  2. CSS3中的calc()函数以及在less中的使用

    1. calc()函数 在CSS3中我们可以通过calc()函数来动态计算长度值,如: #div {width: calc(100% - 100px); } 它的语法是 calc(expression ...

  3. css3中使用calc()计算宽高

    calc()是什么? 是CSS3中新增的一个函数,calculate(计算)的缩写.用于动态计算宽/高,你可以使用calc()给元素的各个属性设置值[margin.border.padding.fon ...

  4. css之calc,初探CSS3中的calc()功能

    之前,我们想要实现一个完美的宽度自适应的输入框好麻烦,曾经也被作为对前端技术的一个挑战.类似的常见场景还有100%宽+边框的容器等.遇到这些情况,我们不得不分外小心,因为各个浏览器的表现可能不一致. ...

  5. CSS3中的calc( )属性

    作用: calc() 函数用于动态计算长度值 其实,calc()这个形式看起来就很容易让人想到Javascript里的函数,当然他不是js里的函数,但是他有着类似函数的功能,可以用来计算,括号里是一个 ...

  6. CSS3中使用calc()设置浏览器宽度和高度减去固定值的写法

    设置宽度:width:calc(100vw - 123px); 说明:1.vw是width of view(port)的缩写: 2.100vw表示百分之百的视图宽度: 3.123px是需要减去的宽度: ...

  7. css3中-moz、-ms、-webkit、 - o -各什么意思

    在了解css3中-moz.-ms.-webkit各什么意思前,先要了解一下浏览器的内核是什么. (一)什么是内核呢? 浏览器最核心的部分是"Rendering Engine",即& ...

  8. css3中的box-sizing属性

    盒子宽度.高度计算公式: css元素宽度 = width + padding + border css元素高度 = height + padding + border css3之前,当我们需要呈现一个 ...

  9. 浅谈CSS3中display属性的Flex布局,关于登陆页面属性框的设置

    声明:本文转发自三里屯柯南的浅谈CSS3中display属性的Flex布局http://www.cnblogs.com/xuyuntao/articles/6391728.html 基本概念 采用Fl ...

最新文章

  1. 【C++简明教程】Python和C++指定元素排序比较
  2. easyui js拼接html,class属性失效的问题
  3. “开店办厂,去望城!” ——望城区市场主体总量突破十万户
  4. 原来Python破解受密码保护的zip文件这么简单,不保证一定成功
  5. Session的异常
  6. c语言函数调用数组_第七讲:C语言基础之函数,第二节,实现汉诺塔
  7. 解决: Cannot find module ‘webpack-cli/bin/config-yargs‘、Error: Cannot find module ‘webpack-cli‘
  8. 自适应 幻灯片代码 app_低成本0基础开发app之开发首页幻灯片接口
  9. 亚信基于AWS构建世界级企业互联网平台
  10. day02 Python 运算符
  11. 视频教程-Excel VBA网抓教程【你学得会】-Office/WPS
  12. 强大web打印控件下载 - 2019年最新支持所有浏览器-楚琳打印
  13. Ubuntu 声卡解决办法合集
  14. php web helloworld,webim_server.php
  15. uniapp+nvue开发之仿微信语音+视频通话功能 :实现一对一语音视频在线通话
  16. 宣化科技职业学院计算机哪个校区,宣化科技职业学院宿舍怎么样
  17. 用python做算法需要哪些技能_成为一名CV算法工程师,你需要具备哪些能力?
  18. Leetcode_123_Best Time to Buy and Sell Stock III
  19. 兄弟hl3150cdn打印测试页6_打印性能测试:LED高效输出_兄弟 3150CDN_办公打印评测试用-中关村在线...
  20. 笔记本电源就断网,不接电源正常

热门文章

  1. 【Linux练习生】基础IO(详细)
  2. FA-DDP叶酸磁性纳米颗粒载顺铂/E100-DDP 姜黄素修饰顺铂
  3. 3天破9亿!上万条评论解读《西虹市首富》是否值得一看
  4. 独立游戏Godot游戏开发日志
  5. 朴素贝叶斯色情类网站内容识别
  6. javascript读取sgf格式文件源码下载
  7. Linux下设备树dts内容(详细)总结及示例解析
  8. canvas简易刮奖
  9. 室内施工图LiSP_CAD室内设计图上的A,B,C,D..,G,H代表什么?
  10. 有打印机的源代码餐饮_支持接入标签打印机,餐饮门店两类商家有福了