CSS中display、float、position的关系

(1)首先判断display属性是否为none,如果为none,则position和float属性的值不影响元素最后的表现。

(2)然后判断position的值是否为absolute或者fixed,如果是,则float属性失效,并且display的值应该被设置为table或者block,具体转换需要看初始转换值。

(3)如果position的值不为absolute或者fixed,则判断float属性的值是否为none,如果不是,则display的值则按上面的规则转换。注意,如果position的值为relative并且float属性的值存在,则relative相对于浮动后的最终位置定位。

(4)如果float的值为none,则判断元素是否为根元素,如果是根元素则display属性按照上面的规则转换,如果不是,则保持指定的display属性值不变。

总的来说,可以把它看作是一个类似优先级的机制,"position:absolute"和"position:fixed"优先级最高,有它存在的时候,浮动不起作用,'display'的值也需要调整;其次,元素的'float'特性的值不是"none"的时候或者它是根元素的时候,调整'display'的值;最后,非根元素,并且非浮动元素,并且非绝对定位的元素,'display'特性值同设置值。

相关推荐
爱编程的鱼4 分钟前
Joomla 常用模块 - 在线用户与Joomla 常用模块 - 自定义HTML模块
前端·css·html·joomla
人间小趴菜12 分钟前
CSS高度坍塌?如何解决?
前端·css
拖孩40 分钟前
【Nova UI】六、SASS 赋能组件库:通用方法与混入的变革力量
前端·javascript·vue.js
九亿AI算法优化工作室&42 分钟前
Qt平台+三维建模+动画演示+工业风展示
前端·qt
kurcp1 小时前
vue3 antdesign上传解析excel
前端·typescript·excel
旭久2 小时前
前端下载文件时浏览器右上角没有保存弹窗及显示进度,下载完之后才会显示保存弹窗的问题定位及解决方案
前端
excel2 小时前
webpack 模块 第 一 节
前端
excel2 小时前
webpack 格式化模块 第 七 节
前端
好_快3 小时前
Lodash源码阅读-dropRight
前端·javascript·源码阅读