CSS中display/float/position属性值的相互影响

有3个属性和布局以及box的创建有关:'display', 'position' 和 'float',彼此交互作用如下:

如果'display'值为'none',则'position' 和 'float'无作用。这种情况下,不生成box。
否则,如果'position'值为'absolute' 或 'fixed', box被绝对定位,'float'的计算值为'none',而'display'的值按下表设定。box的位置将由'top', 'right', 'bottom' 和 'left' 属性及其包容块所确定。
否则,如果'float'的值不是'none', box是浮动的并且'display'的值按下表设定。
否则,如果元素为根元素,'display'的值按下表设定(除了list-item指定值,该值被计算为'block'还是'list-item',在CSS2.1中未定义。)

否则,其余情况下'display'属性值就是其指定的值。


其中inline-flex和flex是CSS3弹性布局模块引入的新属性值。

概括而言,绝对定位、弹性布局和网格布局容器的内容项的display属性会被块级化(blockified)。


参考链接:

1. https://www.w3.org/TR/css3-flexbox/#flex-containers

2. https://www.w3.org/TR/CSS2/visuren.html#dis-pos-flo

3. https://drafts.csswg.org/css-display/#blockify

by iefreer

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值