CSS3之calc()和box-sizing属性

时间:2023-01-15 21:18:49

box-sizing 属性

  规定两个并排的带边框的框:

例子:

CSS3之calc()和box-sizing属性

box-sizing 属性允许您以特定的方式定义匹配某个区域的特定元素。

例如,假如您需要并排放置两个带边框的框,可通过将 box-sizing 设置为 "border-box"。这可令浏览器呈现出带有指定宽度和高度的框,并把边框和内边距放入框中。

CSS3之calc()和box-sizing属性

代码:

  html页面

         <div class="container">
<div class="content">content</div>
<div class="slider">slider</div>
</div>

  CSS代码

             .container{
border: 2px solid green;
height: 200px;
width: 100%;
line-height: 200px;
text-align: center; }
.container > div{
float: left;
}
.content{
border: 2px solid blueviolet;
height: 200px;
width: 69%;
box-sizing: border-box;
float: left !important;
}
.slider{
border: 2px solid deepskyblue;
height: 200px;
width: 30%;
box-sizing: border-box;
float: right !important;
}

calc() 属性

例子:

CSS3之calc()和box-sizing属性

什么是calc()?

  calc()从字面我们可以把他理解为一个函数function。其实calc是英文单词calculate(计算)的缩写,是css3的一个新增的功能,用来指定元素的长度。比如说,你可以使用calc()给元素的border、margin、pading、font-size和width等属性设置动态值。为何说是动态值呢?因为我们使用的表达式来得到的值。不过calc()最大的好处就是用在流体布局上,可以通过calc()计算得到元素的宽度

calc()有什么用?

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

calc()的运算规则

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

语法

calc()语法

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

.elm {
width: calc(expression);
}

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

实际应用中要注意做浏览器兼容:

大家在实际使用时,同样需要添加浏览器的前缀

 .elm {
/*Firefox*/
-moz-calc(expression);/*chrome safari*/
-webkit-calc(expression);/*Standard */
calc();
}
代码
 
 html页面
      <div class="container">
<div class="content1">content1</div>
<div class="slider1"><slider1></slider1></div>
</div>

CSS页面

            .container{
border: 2px solid green;
height: 200px;
width: 100%;
line-height: 200px;
text-align: center; }
   .container > div{
float: left;
}
       .content1{
border: 2px solid blueviolet;
height: calc(100% - 4px);
width: calc(70% - 10px - 4px);
margin-right: 10px;
}
.slider1{
border: 2px solid deepskyblue;
height:calc(100% - 4px);
width: calc(30% - 4px);
}

  总结:

从上面的代码及效果图中,我们可以看出他们之间一些细微的差别,这需要我们在使用过程中根据实际情况去选择使用哪个属性,当然总体上,我对calc()使用感觉好一些。


CSS3之calc()和box-sizing属性的更多相关文章

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

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

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

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

  3. CSS3的calc&lpar;&rpar;使用

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

  4. CSS的单位及css3的calc&lpar;&rpar;及line-height百分比

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

  5. CSS的单位 及 css3的calc&lpar;&rpar; 及 line-height 百分比

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

  6. CSS3盒模型display&colon;box详解

    display:box;box-flex是css3新添加的盒子模型属性,它的出现可以解决我们通过N多结构.css实现的布局方式.经典的一个布局应用就是布局的垂直等高.水平均分.按比例划分. 目前box ...

  7. CSS3盒模型display&colon;box简述

    display:box;box-flex是css3新添加的盒子模型属性,它的出现可以解决我们通过N多结构.css实现的布局方式.经典的一个布局应用就是布局的垂直等高.水平均分.按比例划分. box-f ...

  8. &lbrack;转&rsqb;CSS3盒模型display&colon;box详解

    时间:2014-02-25来源:网络作者:未知编辑:RGB display:box;box-flex是css3新添加的盒子模型属性,它的出现可以解决我们通过N多结构.css实现的布局方式.经典的一个布 ...

  9. css3的calc&lpar;&rpar; css3的百分比减宽&comma;减高&comma;加&comma;乘&comma;除,适合用于后台的排版定位

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

  10. CSS3表达式calc&lpar; &rpar;

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

随机推荐

  1. 谢欣伦 - 原创软件 - 游戏专题 - 操蛋的小鸟Fucking Bird

    前段时间朋友介绍了一个最近很火的游戏<Flappy Bird>.在工作之余,我用了三天时间做了一个类似的游戏<Fucking Bird>.一开始分享给了两个女同事,发现她们玩嗨 ...

  2. Java之使用NetworkInterface类获得网络接口信息

    转:http://www.xuebuyuan.com/1037327.html

  3. js中各种跨域问题实战小结(一)

    什么是跨域?为什么要实现跨域呢? 这是因为JavaScript出于安全方面的考虑,不允许跨域调用其他页面的对象.也就是说只能访问同一个域中的资源.我觉得这就有必要了解下javascript中的同源策略 ...

  4. div元素抓取

    var files = $(".button").find("input[type='image']"); files.each(function() { $( ...

  5. POJ2418——Hardwood Species&lpar;map映射&rpar;

    Hardwood Species DescriptionHardwoods are the botanical group of trees that have broad leaves, produ ...

  6. ORA-01078&comma; LRM-00123错误处理

    创建spfile时, 或者在nomount时, 出现下面的问题: SQL> create spfile from pfile; create spfile from pfile * ERROR ...

  7. Qt制作Aero特效窗口

    转载请注明链接与作者huihui1988 初学QT,边看书边自己做点小东西.最近突然心血来潮,想自己做个小巧点的,界面美观一点的备忘当桌面上.想了半天,发现VISTA/WIN7的Aero效果就不错,况 ...

  8. &lbrack;&colon; 11&colon; y&colon; unexpected operator问题

    <私房菜>上的shell脚本问题: 转载:[: 11: y: unexpected operator问题 脚本如下:% #!/bin/bash # Program: # This prog ...

  9. AspNetCore 中使用 InentityServer4(2)

    基于上一篇文章 实现对IdnetityServer4 服务的使用 1:添加接口解决方案,并且使接口受认证服务的保护: 首先在解决方案中添加Api项目如下图所示: 在API项目中添加Nuget 引用 如 ...

  10. spring 集成redis客户端jedis&lpar;java&rpar;

    spring集成jedis简单实例   jedis是redis的java客户端,spring将redis连接池作为一个bean配置. “redis.clients.jedis.JedisPool”,这 ...