在 390px 寬的手機上,有一整排版面擠成一團。
第一個想到的修法是把字縮小。我們縮了三次,每縮一次,某一塊變好,另一塊就變糟。
連量的方法都有問題
一開始我們用「折成幾行」來判斷擠不擠。這個指標會在兩種情況下騙人。
容器被隱藏的時候,寬度是零。一個收起來的面板,量出來永遠是一行,看起來完美。
溢出的內容被裁掉的時候,行數不會增加。畫面上少了半句話,數字上什麼事都沒有。
後來換成量內容實際的高度和容器高度的比值,而且要等元素真的顯示出來之後再量。
真正的問題
窄螢幕上擠成一團,很少是因為哪一個元素太大。比較常見的是,沒有任何一個元素被允許讓路。
主要內容、補充說明、日期與分類、操作按鈕,每一塊都覺得自己一定要在。畫面變窄,它們就一起變窄,最後每一塊都不好讀。
修法是排優先順序
我們替每一塊定了一個層級,再寫清楚畫面窄到多少以下,它該怎麼做:
- 主要內容:一直都在,內容完整
- 補充說明:窄到一定程度就收起來,不用縮小字來硬塞
- 日期與分類:併成一行,或只留最重要的那一項
- 操作按鈕:改成整列寬度,一個一行
字級沒有再動過。



