dom设置float属性后,display属性怎么理解

发布于 2022-09-07 03:24:31 字数 489 浏览 26 评论 0

在看float方面的文章,说是元素设置成float后会像inline元素一样产生包裹性,宽度会随内容宽度自适应。
这个可以通过例子验证:正确
同时,又有一句话说:元素一旦设置float属性的值不为none,则其display计算值就是block或者table,我们也可以通过下面的代码验证:

var span = document.createElement('span')
document.body.appendChild(span)
console.log('1.' + window.getComputedStyle(span).display)
span.style.cssFloat = 'left'
console.log('2.' + window.getComputedStyle(span).display)

但是我怎么老是觉得两者是矛盾的呢?既然设置float属性后,display计算值就是block,那么就不会产生包裹性啊?
为什么呢?是我理解错了吗?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

清引 2022-09-14 03:24:31

display计算值就是block,意思是可以像block一样设置宽高,并不是块元素

烟酉 2022-09-14 03:24:31

感觉display属性应该是变成inline-block比较靠谱,既能设置宽、高、margin、padding等属性,又不独占一行。我也纠结了好久这个问题。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文