大家要想完成网页页面自融入合理布局时,一般由于margin的存在,而较为不便;有时要想完成宽度自融入的键入框时,也由于padding或margin的存在,而非常繁琐,另外因为访问器适配性而致使最后实际效果不1致。css3新加上特性box-sizing,在1定水平上处理了上面的难题,而在今日的文章内容中大家来根据css3新提升的此外1个特性calc()来完成融入合理布局。
calc()是css3新加上特性,它可让你应用1个算术表述式来表述长度值,这代表着能够用它来界定div的宽度,并设定margin、padding、border等。
calc()的运算标准:
1.应用”+”、”-”、”*”、”/”4则运算;
2.可使用百分比、px、em、rem等企业;
3.能够混和应用各种各样企业开展测算。
用法
calc()英语的语法十分简易,就像大家小情况下学加 (+)、减(-)、乘(*)、除(/)1样,应用数学课表述式来表明:
CSS Code拷贝內容到剪贴板
- .haorooms {
- width: calc(expression);
- }
这样padding和margin和百分比1起用,难题便可以处理了。
比如,大家margin是20px。那末大家便可以写成
CSS Code拷贝內容到剪贴板
- .haorooms{
- width: calc(100% - 20px); //注:减号前后左右要有时间格,不然极可能不起效!!
- }
还可以这么用:
CSS Code拷贝內容到剪贴板
- .box {
- background: #f60;
- height: 50px;
- padding: 10px;
- border: 5px solid green;
- width: 90%;
- width:-moz-calc(100% - (10px + 5px) * 2);
- width:-webkit-calc(100% - (10px + 5px) * 2);
- width: calc(100% - (10px + 5px) * 2);
- }
示例
案例1:精准定位在网页页面上的块元素,含有外边距
CSS Code拷贝內容到剪贴板
- .banner {
- position:absolute;
- left: 40px;
- width: -moz-calc(100% - 80px);
- width: -webkit-calc(100% - 80px);
- width: calc(100% - 80px);
- border: solid black 1px;
- box-shadow: 1px 2px;
- background-color: yellow;
- padding: 6px;
- text-align: center;
- }
案例2:全自动调剂尺寸的表单,又融入器皿
CSS Code拷贝內容到剪贴板
- input {
- padding: 2px;
- display: block;
- width: -moz-calc(100% - 1em);
- width: -webkit-calc(100% - 1em);
- width: calc(100% - 1em);
- }
-
- #formbox {
- width: -moz-calc(100%/6);
- width: -webkit-calc(100%/6);
- width: calc(100%/6);
- border: 1px solid black;
- padding: 4px;
- }
XML/HTML Code拷贝內容到剪贴板
- <form>
- <div id="formbox">
- <label>Type something:</label>
- <input type="text">
- </div>
- </form>