鍍金池/ 問答/網(wǎng)絡(luò)安全/ dom設(shè)置float屬性后,display屬性怎么理解

dom設(shè)置float屬性后,display屬性怎么理解

在看float方面的文章,說是元素設(shè)置成float后會像inline元素一樣產(chǎn)生包裹性,寬度會隨內(nèi)容寬度自適應(yīng)。
這個可以通過例子驗證:正確
同時,又有一句話說:元素一旦設(shè)置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)

但是我怎么老是覺得兩者是矛盾的呢?既然設(shè)置float屬性后,display計算值就是block,那么就不會產(chǎn)生包裹性啊?
為什么呢?是我理解錯了嗎?

回答
編輯回答
呆萌傻

display計算值就是block,意思是可以像block一樣設(shè)置寬高,并不是塊元素

2017年11月14日 01:00
編輯回答
雅痞

感覺display屬性應(yīng)該是變成inline-block比較靠譜,既能設(shè)置寬、高、margin、padding等屬性,又不獨占一行。我也糾結(jié)了好久這個問題。

2017年7月14日 21:48