首頁 >web前端 >css教學 >百分比的細節-容器大小篇_經驗交流

百分比的細節-容器大小篇_經驗交流

WBOY
WBOY原創
2016-05-16 12:08:051363瀏覽

因為螢幕能顯示的最小單位是1px,對於像773*50%=386.5這樣帶數字的長度必須有所取捨。

測試頁面,有些瀏覽器的截圖寬度也在裡面

IE:以四捨五入的方式計算。

Firefox:計算後的數值忽略小數部分,但會把多出的長度分配給裡面的各元素。如果只多出1px,例如2*386=772,剩下的1px會到其中一個元素,優先分配第一個元素,像773px分配給兩個50%時得到的是:387px和386px,分配給四個25%時得到的是:194px、193px、193px和193px; 而對於多出幾個px,如773*33.3%=257.409,773*33.33%=257.6409,由於忽略掉的小數不一樣,被忽略的原則不一樣,也不一樣,找不到相關資料,以下是我的猜想,三個元素的,按四捨五入的方式分配,四捨的優先分配給兩邊,五入的優先分配給前邊兩個,對於分配給三個元素以上的,多出部分自由分配,我找不到規律,但第一個一定會被分配到。

FF還有一些奇怪的地方。 Firefix測試頁面。 1024寬度不會自動分配,也許是因為外層也是帶小數的,導致1px沒分配,接著測試Firefox

Opera & Safari2:計算時忽略百分比的小數部分,計算後的值忽略小數部分,如果裡面的元素大於計算後的寬度不會導致後面的元素換行。

Netscape & Mozilla:計算後忽略小數,多出部分有點類似Firefox,但多出部分是比透明顯示,而且比較奇怪,例如33.33%*3=99.99% 小於100%,但卻大於100%,奇怪的瀏覽器,還好使用的人不多,不用太在意這兩個瀏覽器。

測試沒完成,有興趣的朋友幫忙測試,單獨的測試頁,有知道原因的朋友講一下下

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn