响应式布局box-sizing与巧用css3的calc()方法

    xiaoxiao2022-06-23  47

    css3 box-sizing属性

    box-sizing属性可以为三个值之一:content-box(default),border-box,padding-box。

    content-box,border和padding不计算入width之内

    padding-box,padding计算入width内

    border-box,border和padding计算入width之内,其实就是怪异模式了~

     

    ie8+浏览器支持content-box和border-box;

    ff则支持全部三个值。

     

    使用时:

    -webkit-box-sizing: 100px; // for ios-safari, android

    -moz-box-sizing:100px; //for ff

    box-sizing:100px; //for other

    栗子:

    <style type="text/css"> .content-box{ box-sizing:content-box; -moz-box-sizing:content-box; width: 100px; height: 100px; padding: 20px; border: 5px solid #E6A43F; background: blue; } .padding-box{ box-sizing:padding-box; -moz-box-sizing:padding-box; width: 100px; height: 100px; padding: 20px; border: 5px solid #186645; background: red; } .border-box{ box-sizing:border-box; -moz-box-sizing:border-box; width: 100px; height: 100px; padding: 20px; border: 5px solid #3DA3EF; background: yellow; }

    </style>

    原文链接:http://www.cnblogs.com/zhaoran/archive/2013/05/24/3097482.html

    calc()能做什么?calc()能让你给元素的做计算,你可以给一个div元素,使用百分比、em、px和rem单位值计算出其宽度或者高度,比如说“width:calc(50% + 2em)”,这样一来你就不用考虑元素DIV的宽度值到底是多少,而把这个烦人的任务交由浏览器去计算。

    calc()语法calc()语法非常简单,就像我们小时候学加 (+)、减(-)、乘(*)、除(/)一样,使用数学表达式来表示:

    width: calc(expression);

    其中”expression”是一个表达式,用来计算长度的表达式。

    calc()的运算规则calc()使用通用的数学运算规则,但是也提供更智能的功能:

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

    浏览器的兼容性

    原文链接 :http://www.daqianduan.com/6183.html

    转载请注明原文地址: https://ju.6miu.com/read-1123562.html

    最新回复(0)