1、首先判斷display屬性是否為none,如果為none,則position和float屬性的值不影響元素最后的表現(xiàn)。
2、然后判斷position的值是否為absolute或者fixed,如果是,則float屬性失效,并且display的值應(yīng)該被設(shè)置為table或者block,具體轉(zhuǎn)換需要看初始轉(zhuǎn)換值。
3、如果position的值不為absolute或者fixed,則判斷float屬性的值是否為none,如果不是,則display的值則按上面的規(guī)則轉(zhuǎn)換。注意,如果position的值為relative并且float屬性的值存在,則relative相對于浮動后的最終位置定位。
4、如果float的值為none,則判斷元素是否為根元素,如果是根元素則display屬性按照上面的規(guī)則轉(zhuǎn)換,如果不是,則保持指定的display屬性值不變。
總的來說,可以把它看作是一個類似優(yōu)先級的機制,"position:absolute"和"position:fixed"優(yōu)先級最高,有它存在的時候,浮動不起作用,'display'的值也需要調(diào)整;其次,元素的'float'特性的值不是"none"的時候或者它是根元素的時候,調(diào)整'display'的值;最后,非根元素,并且非浮動元素,并且非絕對定位的元素,'display'特性值同設(shè)置值。