calc的介绍

在css3样式中有一个类似与函数的计算属性calc(),它主要用于指定元素的长度,无论是border、margin、pading、font-size和width等属性都可以使用calc来设置动态值。calc支持的运算单位有rem , em , %, px,calc是支持单位的混合使用的,其计算优先级别和数学一致。

calc的用法

.elm{

width:calc(expression);

}

其中,expression是一个用来计算长度的表达式,支持“+”,“-”,“*”,“/”运算符。

注意1: 表达式中有“+”和“-”时,其前后必须要有空格,如"widht: calc(12%+5em)"这种没有空格的写法是错误的;而对于“*”,“/”并没有这种要求,但为了风格的统一,建议前后也要留空格。例如:

width: calc(100% -8px); /* 这样会出错,结果为0 */

width: calc(100% - 8px); /* 当 + - 符号用空格隔开时,运算成功 */

注意2:使用 * / 运算符时,必须保证有一个值为数值类型;

calc的兼容:

在IE9+、FF4.0+、Chrome19+、Safari6+支持较好,移动端支持不理想。 如图:

兼容性前缀:

.elm{

width: calc(80% - 10px);

width: -moz-calc(80% - 10px); /*Firefox*/

width: -webkit-calc(80% - 10px); /*chrome safari*/

}

在less如何使用

由于less中会把它当表达式计算掉了,需要在参数外面加上: ~("expression"),如:

.elm{

width: calc(~"100% - 80px");

}

或者使用e(“”)包裹在里面,如:

width:e("calc(100% - 80px)");

可如果要用变量怎么用呢?也不复杂,像下面这样就搞定啦。

.class {

@cap: 50px;

height: calc(~"100% - @{cap}");

}

calc实现适应布局例子

必须使用设置百分比页面同时又有margin时,会出现不够满挤到下一行的情况,所以要用到calc重新计算百分比

@media screen and (min-width:768px){

.col-sm-{

width: calc(8.1% - 20px);

}

.col-sm-{

width: calc(16.7% - 20px);

}

.col-sm-{

width: calc(% - 20px);

}

.col-sm-{

width: calc(33.3% - 20px);

}

.col-sm-{

width: calc(%- 20px);

}

.col-sm-{

width: calc(% - 20px);

}

}

Vue - 在v-repeat中使用计算属性

1.从后端获取JSON数据集合后,对单条数据应用计算属性,在Vue.js 0.12版本之前可以在v-repeat所在元素上使用v-component指令 在Vue.js 0.12版本之后使用自定义元素 ...

Vue中的计算属性与$watch

计算属性:在模板中绑定表达式是非常便利的,但是他们实际上只用于简单的操作.模板是为了描述视图的结构.在模板中放入太多的逻辑会让模板过重且难以维护.这就是为什么vue.js将绑定表达式限制为一个表达式. ...

vuejs中的计算属性和监视

计算属性 1.在computed属性对象中定义计算属性的方法,在页面上使用{{方法名}}来显示计算结果 2.通过getter/setter实现对属性数据的显示和监视 3.计算属性存在缓存,多次读取只执 ...

Vue学习之vue中的计算属性和侦听器

iOS11 Xcode 9 按住command 单击 恢复到从前(直接跳转到定义)

iOS11 Xcode 9  按住command 单击 恢复到从前(直接跳转到定义)   2017年9月20日,苹果如期推送 Xcode 9 和 iOS 11的更新. Xcode 9正式版与之前bet ...

Linux进程作业的查看和杀死

引入进程 进程 线程 PS命令.TOP命令.其他查看进程命令 进程的优先级 作业控制机制 kill命令 一.引入进程 1.内存划分为:用户空间和内核空间 1.在用户空间里运行的进程,就是用户进程,所属 ...

Android英文文档翻译系列(1)——AlarmManager

原文:个人翻译,水平有限,欢迎看官指正.                                                              public class Ala ...

css中会计算的属性,css3中样式计算属性calc()的使用和总结相关推荐

  1. html5中css新增的属性,css3有哪些新增属性?常用的新增属性总结

    css3新增属性有哪些?来提问这个问题的人都应该知道css3是css的升级版本,那么,css3既然是升级版本,自然是会新增一些属性,接下来本篇文章将给大家介绍关于css3中常用的新增属性. 一.css ...

  2. html5 css 响应式_在HTML5 / CSS3中编写响应式简历

    本文是我们的" Web响应式设计系列"的一部分,该系列由工具,资源和教程组成,可帮助您为所有平台的用户创建网站. 单击此处查看同一系列的更多文章. 业务部分的几乎每个人都在某个时间 ...

  3. css面包屑导航_在CSS3中编写优美的面包屑导航菜单

    本文是我们的" HTML5 / CSS3教程系列"的一部分 -致力于帮助您成为更好的设计师和/或开发人员. 单击此处查看同一系列的更多文章. 导航菜单和链接可能是Web布局中最重要 ...

  4. html中的transform属性,CSS3中transform属性

    8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? 一.Transform描述: ransform是变形,改变的意思.在CSS3中transform主要包括以下几种:旋转r ...

  5. css中变形,css3中变形处理

    transfrom功能 在css3 中可以使用transfrom功能实现文字或图像的旋转,缩放,倾斜,移动等变形处理 deg是css3中使用的一种角度单位. 旋转: 使用rotate方法,在参数中加入 ...

  6. 从零开始前端学习[32]:css3中新增加的一些文本属性

    css3中新增加的一些文本属性 css中相关的文本属性 css3中增加的一些文本属性 direction文本显示方向 多行超出文本显示省略号 text-shadow字体的阴影设置 text-strok ...

  7. html里的input属性,HTML中强大的input标签属性

    用了许久的html,这个标签是最常用的标签之一. 标签中type属性是必不可少的,以往我最常用的有 type="text"(单行文本输入) 类型. type="butto ...

  8. css3中的 @Keyframes

    一.介绍 keyframes被称为关键帧,其类似于Flash中的关键帧.在CSS3中其主要以"@keyframes"开头,后面跟着是动画名称加上一对花括号"{-}&quo ...

  9. CSS3中背景与边框相关样式

    1 与背景相关的新增属性 background-clip:指定背景的显示范围. background-origin:指定绘制背景图像时的起点. background-size:指定背景中图像的尺寸. ...

最新文章

  1. ubuntu python设置utf-8
  2. JAVA test代码运行
  3. 直接用Win32 API创建对话框Demo
  4. html:(35):缩进和行高
  5. 线程安全和可重入函数的联系与区别
  6. 怎么用python编程前二n-1项的等差数列的和_python— 等差数列末项计算方式
  7. swift 2.1 安裝與下載
  8. Linux驱动编写(块设备驱动代码)
  9. Windows下安装并启动mongodb
  10. sublime press key “escape” can't type anything
  11. (转)Fabric 1.0 读写集
  12. 让我们在Ubuntu 18.04上加密SSL证书来保护Nginx
  13. 用 grldr 引导WinXP/Ubuntu双系统
  14. iOS经典讲解之Apple Pay开发
  15. 多元线性回归--案例分析及python实践
  16. Excel 常用技巧目录
  17. html table的边框线怎么变圆角_CSS如何设置html table表格边框样式
  18. 视频播放器(二):视频解码
  19. 计算机设置休眠密码,win10系统如何设置电脑待机密码?windows10设置待机密码图文教程...
  20. win7记事本如何转换html,记事本格式_win7记事本怎么改格式

热门文章

  1. 剑指Offer——(44)翻转单词顺序列
  2. unity ——UI用户界面
  3. WPF实现一个三维谷歌地球
  4. 输入一个字符串,内有数字和非数字字符,例如: a123x456 17960? 302tab5876 将其中连续的数字作为一个整数,一次存放到一个数组中。
  5. 康盛创想介入团购行业
  6. 数据类型的相互转换 ,字符编码
  7. ps3模拟器(rpcs3) v0.0.0.4 中文版
  8. 机智云总经理黄锡雄为工业互联网专题研修班培训讲师 / 受邀智能家电技术研讨会/受邀CFAI全球人工智能峰会
  9. 计算机英语sectionB,计算机专业英语教程课文翻译 Chapter Two SectionB.pdf
  10. coupons:美团饿了吗吗外卖红包外卖优惠券,先领红包再下单。外卖红包优惠券,cps分割,别人领红包下单,你拿佣金-源码