content-box,border-box与width100%,BFC与自适应布局

本文深入探讨了CSS中content-box与border-box的区别,解析了border与outline的特性,详细阐述了BFC(块级格式化上下文)的概念、特点及触发条件。同时,文章还讨论了BFC在实际应用中的优势与弊端,如解决margin重叠、浮动高度坍塌等问题。

1.content-box:with指其content   width100%的话往往会出现超出的情况

border-box;width指content+padding+borderwidth

现在一般都用border-box  width100%实现自适应布局

 

2.另外说说border与outline的区别  outline不占任何空间   并且不一定是矩形

width:auto对块级元素来讲就是占据整行

与height:auto 是指根据内容决定高度

 

3.bfc 块级格式化上下文

bfc元素的特点:BFC是一个独立的布局环境,其中的元素布局是不受外界的影响,并且在一个BFC中,块盒与行盒(行盒由一行中所有的内联元素所组成)都会垂直的沿着其父元素的边框排列。

1、内部的Box会在垂直方向上一个接一个的放置

2、垂直方向上的距离由margin决定。(完整的说法是:属于同一个BFC的两个相邻Box的margin会发生重叠,与方向无关。)

3、每个元素的左外边距与包含块的左边界相接触(从左向右),即使浮动元素也是如此。(这说明BFC中子元素不会超出他的包含块,而position为absolute的元素可以超出他的包含块边界)

4、BFC的区域不会与float的元素区域重叠

5、计算BFC的高度时,浮动子元素也参与计算

6、BFC就是页面上的一个隔离的独立容器,容器里面的子元素不会影响到外面元素,反之亦然

 

触发BFC的条件:

1、float的值不是none。
2、position的值不是static或者relative。
3、display的值是inline-block、table-cell、flex、table-caption或者inline-flex
4、overflow的值不是visible

BFC也会带来很多弊端

1、display: table 可能引发响应性问题
2、overflow: scroll 可能产生多余的滚动条
3、float: left 将把元素移至左侧,并被其他元素环绕
4、overflow: hidden 将裁切溢出元素

5.根元素

因而无论什么时候需要创建BFC,都要基于自身的需要来考虑

 

实际应用:

1.margin重叠

2.浮动高度坍塌

3.实现自适应布局(用postion absolute left=右边宽度可以解决)

 

转载于:https://www.cnblogs.com/stephenleee/p/10275698.html

内层有一个input和一个div,我想让div居中,我外层div的css如下,background-color rgba(0, 0, 0, 0) border-bottom-color rgb(229, 229, 229) border-bottom-left-radius 10px border-bottom-right-radius 10px border-bottom-style solid border-bottom-width 1px border-image-outset 0 border-image-repeat stretch border-image-slice 100% border-image-source none border-image-width 1 border-left-color rgb(229, 229, 229) border-left-style solid border-left-width 1px border-right-color rgb(229, 229, 229) border-right-style solid border-right-width 1px border-top-color rgb(229, 229, 229) border-top-left-radius 10px border-top-right-radius 10px border-top-style solid border-top-width 1px box-sizing border-box color rgb(95, 95, 95) cursor pointer display flex font-family "Helvetica Neue", Helvetica, "PingFang SC", Tahoma, Arial, sans-serif font-feature-settings normal font-kerning auto font-optical-sizing auto font-size 14px font-stretch 100% font-style normal font-variant-alternates normal font-variant-caps normal font-variant-east-asian normal font-variant-ligatures normal font-variant-numeric normal font-variant-position normal font-variation-settings normal font-weight 400 height 70px left 0px line-height 28px margin-bottom 0px margin-left 0px margin-right 0px margin-top 0px padding-bottom 12px padding-left 12px padding-right 12px padding-top 12px position relative text-wrap wrap top 0px unicode-bidi isolate user-select none vertical-align middle white-space-collapse collapse width 300px z-index 10 -webkit-tap-highlight-color rgba(0, 0, 0, 0)
03-26
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值