美文网首页
CSS3:calc() 属性用法

CSS3:calc() 属性用法

作者: 辣瓜瓜 | 来源:发表于2017-07-18 14:04 被阅读724次

简介:

calc是英文单词calculate(计算)的缩写,是css3的一个新增的功能,可以使用calc()给元素的border、margin、pading、font-size和width等属性设置动态值。

calc()能给元素的做计算,可以给一个div元素,使用百分比、em、px和rem单位值计算出其宽度或者高度,比如说:width:calc(50% + 2em)

calc()的语法:

.elm {
    width: calc(expression);//其中"expression"是一个用来计算长度的表达式
}

calc()的运算规则:

1 使用“+”、“-”、“*” 和 “/”四则运算;
2 可以使用百分比、px、em、rem等单位;
3 可以混合使用各种单位进行计算;
4 表达式中有“+”和“-”时,其前后必须要有空格,如"widht:calc(12%+5em)"这种没有空格的写法是错误的;
5 表达式中有“*”和“/”时,其前后可以没有空格,但建议留有空格。

注:使用时,注意查看浏览器兼容性

浏览器兼容性

例子1:

每个格子width随着浏览器的放大缩小而改变
<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1" />
        <title>calc</title>
        <style type="text/css">
            * {margin: 0;padding: 0;}
            .col-3 {
                width: calc(100%/4 - 5px);
                float: left;
                margin-right: calc(5px*4/3);
                background: #eee;
                color: #333;
                height: 100px;
                text-align: center;
                margin-bottom: calc(5px*4/3);
                font-size: 18px;
                line-height: 100px;
            }
            .col-3:nth-child(4n) {margin-right: 0;}
        </style>
    </head>
    <body>
        <div class="container">
            <div class="col-3">1</div>
            <div class="col-3">2</div>
            <div class="col-3">3</div>
            <div class="col-3">4</div>
            <div class="col-3">5</div>
            <div class="col-3">6</div>
            <div class="col-3">7</div>
            <div class="col-3">8</div>
            <div class="col-3">9</div>
            <div class="col-3">10</div>
            <div class="col-3">11</div>
            <div class="col-3">12</div>
            <div class="col-3">13</div>
            <div class="col-3">14</div>
            <div class="col-3">15</div>
            <div class="col-3">16</div>
        </div>
    </body>
</html>

例子2:

a1和a2之间、跟页面左右间隔都是30px,其宽度随着页面宽度而自适应
<!DOCTYPE html>
<html>

    <head>
        <meta charset="UTF-8">
        <title></title>
        <style>
            .container {
                width: 500px;
                height: 100px;
                background: pink;
                margin: 50px auto;}
            .a1 {
                float: left;
                margin: 30px 15px 0 30px;
                width: -webkit-calc((100% - 90px)/2);
                background: red;
            }
            .a2 {
                float: left;
                margin: 30px 30px 0 15px;
                width: -webkit-calc((100% - 90px)/2);
                background: green;
            }
        </style>
    </head>
    <body>
        <div class="container">
            <div class="a1"> a1 </div>
            <div class="a2"> a 2 </div>
        </div>
    </body>
</html>

相关文章

  • CSS3:calc() 属性用法

    简介: calc是英文单词calculate(计算)的缩写,是css3的一个新增的功能,可以使用calc()给元素...

  • 30秒 学懂 css(二)

    计算属性calc() 函数calc()支持CSS3; 让你的CSS具有计算功能, CSS属性值就是表达式的结果 h...

  • css3的calc属性不生效

    css3里面要用到计算属性calc 错误栗子:div{width:calc(100%-50px)}这样是不生效的 ...

  • 面试总结

    css position、float、BFC、flexbox、css3常用属性等、calc的应用 JS funct...

  • CSS3总结

    CSS3 calc() 计算属性 CSS3效果的简单事例 圆角, 圆形div 阴影2D 转换:放大、缩小、偏移、旋...

  • web前端入门到实战:浅谈CSS calc()函数的用法

    CSS3 的 calc() 函数允许我们在属性值中执行数学操作。例如,我们可以使用 calc() 指定一个元素宽的...

  • CSS3 calc 属性

    原文 使用“+”、“-”、“” 和 “/”四则运算;可以使用百分比、px、em、rem等单位;可以混合使用各种单位...

  • calc计算属性的用法

    calc是CSS3中新增的计算属性。 普通的CSS样式时,计算属性的写法如下: Less中,计算属性的写法如下: ...

  • [译]calc()是如何工作的

    译自How calc() Works - written by Ire Aderinokun CSS3的calc(...

  • 图片模糊处理/计算盒子宽度calc函数/

    CSS3滤镜filter: filter CSS属性将模糊或颜色偏移等图形效果应用于元素。 盒子宽度calc函数 ...

网友评论

      本文标题:CSS3:calc() 属性用法

      本文链接:https://www.haomeiwen.com/subject/ydfhkxtx.html