初识calc()

在使用calc()之前,我也只是听说有这么一个东西,但在用过之后我才发现这个功能其实很实用。

calc()其实就是英文calculate(计算)的缩写,它看起来像个函数吧?

其实不是,calc()是css3中的一个属性

什么是calc()?

使用calc()我们可以动态的来指定元素的长度,我们可以用它给元素的border、margin、pading、font-size和width等属性设置动态值。
为何它是动态的?因为它是通过计算来决定属性的长度的。

calc()的语法

就像它全称calculate(计算)所说的,就是加 (+)、减(-)、乘(*)、除(/)。

怎么写?我举个例子:

.box {
width: calc(100%-10px);
}

这样的话类名为box的类标签,它的宽度就是父元素宽度的100%减去10px,这是一个动态的属性。

实例

我是在工作中遇到这个问题的,情况是这样:

  html:

    <div class="box">

      <div class="box-left"></div>

      <div class="box-right"></div>

    </div>

  css:

    .box{

        width:100px;

        height:200px;

      }

    .box-left{

          width:50%;

          height:100%;

          border-right:1px solid black;

        }

    .box-right{

          width:50%;

          height:100%;

        }

一个div中有左右两个div,但是两个div中有一条中线,我想一般都是用border解决吧!但是因为div的宽度各占50%,在添加了borer之后,两个div的总宽度为50%+50%+1px=100%+1px。

我们的总宽度超过父元素的总宽度了QAQ!所以.div-right被无情的挤了下来。

我们来用calc()把.box-right放上去吧!代码如下:

    

    .box-left{

          width:calc(50% - 1px);

          height:100%;

          border-right:1px solid black;

        }

这样我们就把两个div放进.box了,并且中间成功的放进了一条分割线。╰(*´︶`*)╯

注意事项

在使用的过程中有一些注意事项:

1、运算符号的左右两边要有空格分开,如calc(50% - 1px);

   乘号和除号可以不要加空格,但是建议加上比较好。

2、考虑到兼容问题,我们还可以加上这些:

  width:-moz-calc(40% - 1px); 
   width:-webkit-calc(40% - 1px); 
   width:calc(40% - 1px);

css3之calc()的更多相关文章

  1. CSS3的calc()使用

    CSS3的calc()使用 calc是英文单词calculate(计算)的缩写,是css3的一个新增的功能,用来指定元素的长度.比如说,你可以使用calc()给元素的border.margin.pad ...

  2. CSS的单位及css3的calc()及line-height百分比

    锚点:css中百分比减去固定元素 单位介绍 说到css的单位,大家应该首先想到的是px,也就是像素,我们在网页布局中一般都是用px,但是近年来自适应网页布局越来越多,em和百分比也经常用到了.然后随着 ...

  3. css3 的 calc()函数在布局中的使用----头部高度固定,页面正好占满一屏

    最近项目遇到一个布局需求,头部高度固定,页面需要刚好占满一屏幕. 如下示意图: 方法:使用calc .wrap{ position: relative; margin-left: 24px; marg ...

  4. CSS3 使用 calc() 计算高度 vh px

    Viewport    viewport:可视窗口,也就是浏览器.    vw Viewport宽度, 1vw 等于viewport宽度的1%    vh Viewport高度, 1vh 等于view ...

  5. CSS的单位 及 css3的calc() 及 line-height 百分比

    CSS的单位及css3的calc()及line-height百分比 摘自:http://www.haorooms.com/post/css_unit_calc 单位介绍 说到css的单位,大家应该首先 ...

  6. css3的calc() css3的百分比减宽,减高,加,乘,除,适合用于后台的排版定位

    css3的calc() css3的百分比减宽,减高,加,乘,除,适合用于后台的排版定位 浏览器支持IE9+.FF4.0+.Chrome19+.Safari6+ calc()语法非常简单,就像我们小时候 ...

  7. [转]CSS3 使用 calc() 计算高度 vh px

    1.px 像素,我们在网页布局中一般都是用px. 2.百分比 百分比一般宽泛的讲是相对于父元素,自适应网页布局越来越多,百分比也经常用到了. 3.Viewport    viewport:可视窗口,也 ...

  8. css3的calc属性不生效问题

    css3的 calc:计算属性.由于自己做的项目中这个属性不常用到,偶尔用一次还没效果. 后来研究了下是因为运算符两边没加空格. 错误示例:.content{width:calc(100%-50px) ...

  9. CSS3表达式calc( )

    CSS3表达式calc( ) 第一次看到calc( )时,不太相信calc()是css中的部分.因为看其外表像个函数,但是CSS里为啥会有表达式我也不太清楚,偶然机会在网页里看到的,自己切片写自适应时 ...

  10. css3的 calc属性无效问题解决

    css3的 calc:计算属性. 运算符两边需要加空格,才有效. 错误示例:.mystyle{width:calc(100%-25px)}这样是不生效的 运算符"+ - * /"左 ...

随机推荐

  1. Mac OS X 10.10 Yosemite下配置 apache+php

    自从系统从OS X Mavericks 10.9升级到OS X Yosemite 10.10 后之前配置apache和php均不能正常使用了, 重新设置配置如下: 首先,查看当前系统的apache版本 ...

  2. PKU 1521 Entropy(简单哈弗曼树_水过)

    题目大意:原题链接 给你一个字符串,首先是计算出一个按正常编码的编码长度,其次是计算出一个用霍夫曼编码的编码长度,最后求正常编码的长度除以霍夫曼编码长度的比值,保留一位小数. 解题思路:需要知道 1. ...

  3. Python+Appium API

    1.contextscontexts(self): Returns the contexts within the current session. 返回当前会话中的上下文,使用后可以识别H5页面的控 ...

  4. 如何释放linux cache占用的内存

    [root@prd-fygl-app-01 ~]# free -m             total       used       free     shared    buffers     ...

  5. 前端使用canvas绘制立体三角形

    前端绘制立体效果的三角形的demo 在移动端使用时,需要自适应屏幕.canvas上无法设置rem,所以在canvas外加一个父级元素设置为rem,再将canvas的宽高设置为100% 100%. 如果 ...

  6. 20145314郑凯杰《信息安全系统设计基础》第6周学习总结 part A

    第4章 处理器体系结构 part 1 本部分对改章节的知识点进行总结: 一个处理器支持的指令和指令的字节级编码称为它的指令集体系结构(ISA). 不同的出路器有不同的ISA. ISA模型看上去应该是顺 ...

  7. 20145328 《Java程序设计》实验五实验报告

    20145328 <Java程序设计>实验五实验报告 实验名称 Java网络编程 实验内容 用书上的TCP代码,实现服务器与客户端. 客户端与服务器连接 客户端中输入明文,利用DES算法加 ...

  8. linux 第三周

    linux内核目录结构 arch目录包括了所有和体系结构相关的核心代码.它下面的每一个子目录都代表一种Linux支持的体系结构,例如i386就是Intel CPU及与之相兼容体系结构的子目录.PC机一 ...

  9. JS输出表格头上的文字内容

    Array.from(document.querySelectorAll("#tb1 tr .cell")).map(it=>it.innerText)

  10. POJ-2418 Hardwood Species(二叉搜索树)

    思路就是先将每个单词存进二叉树中,没出现一次,修改该单词所在结点的cnt++: 最后通过递归中序遍历输出结果. 思路很清晰,主要注意一下指针的使用,想一想为什么要这么用? 简单的解释就是,insert ...