overflow 這個 CSS 屬性是給 box 用的,它可以指定當 box 的內容物超過其邊界時,瀏覽器用來顯示的方法。

我在 COREBlog referer plugin is too slow for my box 這一篇 blog 裡提到在目前我的 vanilla skin 裡,如果網頁讀得太慢,右邊的 sidebox 會被擠到瀏覽器視窗的外面去。這個問題就是 overflow 造成的。

當網頁開啟的速度很慢時 (無論是因為頻寬不足、伺服器的處理速度不夠快,或單純是資料量太多),瀏覽器在還不知道右側 sidebox 寬度的時候,就必須決定帶有 overflow 屬性的 box 要如何顯示。IE 似乎是會等到所有的 entity 都載入之後才 render,但 Firefox 會先決定在左側 <div id="content"> 裡 overflow box 的寬度為與瀏覽器內緣同寬。如此一來,在用 Firefox 看這種網頁的時候,寬度設定就變得沒辦法自動調整了。

也就是說,只要 box 裡有 overflow 屬性,Firefox 就可能會在不確定 box 寬度的情形下,擅自決定 box 與上一層 box 同寬。

我想這應該是 Firefox 的一個 bug,不過我還不太確定該怎麼作,才能更精確地描述它。

對 vanilla skin,目前的解決方法是拿掉 <pre><blockquote>overflow 。如果指定 box 的 width 屬性,也可以避免掉寬度不正確的問題,但對 blog 來說固定 <pre><blockquote> 的寬度,視覺效果實在是不好。

Posted by yungyuc at 17:37, 0 comment, 0 trackback.
Navigate
Add a trackback
Add a comment

Your name. (required)

Your personal website. (optional)

Your email address. Will not show in page. (suggested, but optional)

Text format is "Plain Text".

Enter "qUIrY"
© hover year to navigate month: powered by django