首页 > 我的理解:box-sizing

我的理解:box-sizing

下面是我在博客园找到的,和我遇见的情况很相似,所以摘抄下来,原文见:http://www.cnblogs.com/charling/p/3635031.html

box-sizing语法:

  box-sizing : content-box || border-box || inherit

  参数取值:

  content-box:此值为其默认值,其让元素维持W3C的标准Box Model,也就是说元素的宽度/高度(width/height)等于元素边框宽度(border)加上元素内边距(padding)加上元素内容宽度 /高度(content width/height)即:Element Width/Height = border+padding+content width/height。

  border-box:此值让元素维持IE传统的Box Model(IE6以下版本),也就是说元素的宽度/高度等于元素内容的宽度/高度。这里的content width/height包含了元素的border,padding,内容的width/height。即此处的内容宽度/高度=width /height-border-padding。

  

在实际应用中,该属性有个非常有用的地方,即根据百分比为元素设置宽度时。此时,如果元素有padding或者border,将box-sizing设置为border-box会非常有用。

例如:



        


  •     


  •     


  •     


该例子中,默认情况下,li一定不能保持在同一行内。但是设置了box-sizing:border-box之后,就可以保证li在同一行内。(IE8+和高级浏览器支持)

 

我的总结:

  以width为例,无论怎样都有Element width=content width+padding(left和right)+border(left和right),这是不变的。当给元素设置box-sizing属性时:

    

大家好

    p{ box-sizing:content-box;width:100px;pading:0 2px;border:1px solid #dcdcdc;}

 

    width=content width=100px(是以content的边界为准)

 

    p{box-sizing:border-box;width:100px;pading:0 2px;border:1px solid #dcdcdc;}

 

    width=content width+padding(left和right)+border(left和right)=100px(以border边界为准)

 

 

 

 

  

转载于:https://www.cnblogs.com/cgf19920817/p/4538554.html

更多相关:

  • 需要导入Zxing.jar包import android.graphics.Bitmap;import com.google.zxing.BarcodeFormat; import com.google.zxing.MultiFormatWriter; import com.google.zxing.WriterException;...

  • 栈stack:stack 后入先出(LIFO) q.top()获取栈顶元素(并不删除)q.pop()删除栈顶元素q.push(x)向栈中加入元素q.empty()判断栈是否为空 队列queue:先入先出(FIFO)   q.front()获取队首元素(并不删除)q.pop()删除队首元素q.push(x)向队列中加入元素q....

  • resize(),设置大小(size); reserve(),设置容量(capacity); size()是分配容器的内存大小,而capacity()只是设置容器容量大小,但并没有真正分配内存。 打个比方:正在建造的一辆公交车,车里面可以设置40个座椅(reserve(40);),这是它的容量,但并不是说它里面就有了40个座椅,只能说...

  • v-for="(index,$i) in total" :key="$i":style="{left:`${itemWidth*((index-1)%rowItemCount)}px`,top:`${itemHeight*(Math.ceil(index/rowItemCount)-1)}px`}" //total是显示总数量 //l...

  •   技巧一(推荐指数★★★★★) 采用top、right、bottom、left,可以不在乎父元素的宽度和高度,对GPU损耗低于技巧三,但是对浏览器内存的消耗高于技巧三 .子元素 {/*父元素需要position: relative|absolute;*/position: absolute;margin: auto;to...

  • 设计一个支持 push,pop,top 操作,并能在常数时间内检索到最小元素的栈。 push(x) – 将元素 x 推入栈中。pop() – 删除栈顶的元素。top() – 获取栈顶元素。getMin() – 检索栈中的最小元素。 示例: MinStack minStack = new MinStack(); minStack...