三種常見(jiàn)的響應(yīng)式布局方式
時(shí)間:2023-09-23 15:36:02 | 來(lái)源:網(wǎng)站運(yùn)營(yíng)
時(shí)間:2023-09-23 15:36:02 來(lái)源:網(wǎng)站運(yùn)營(yíng)
三種常見(jiàn)的響應(yīng)式布局方式:響應(yīng)式布局使我們的網(wǎng)頁(yè)在各種設(shè)備上廣為傳播。
今天和大家聊聊常見(jiàn)的三種布局方式。
縮放、流式布局與響應(yīng)式
縮放布局,旨在相對(duì)縮放每一個(gè)元素。它們會(huì)隨著窗口大小變化動(dòng)態(tài)縮放內(nèi)容,就這方面而言,它們是響應(yīng)式的。布局本身保持靜止,通過(guò)改變每一個(gè)元素來(lái)保持一致的表現(xiàn)。
上圖:不同分辨率下縮放布局的例子,這種設(shè)計(jì)為了統(tǒng)一犧牲了易讀性。
流式布局就不一樣,因?yàn)樗鼈冸S著窗口尺寸縮放容器元素。通過(guò)em這類(lèi)相對(duì)單位可以做到這點(diǎn),克服了縮小文字的問(wèn)題。用戶(hù)主動(dòng)縮放時(shí),設(shè)計(jì)就被破壞了。
上圖:不同分辨率下流式布局的例子,這種設(shè)計(jì)為了易讀性犧牲了統(tǒng)一。
響應(yīng)式設(shè)計(jì)不會(huì)縮放任何東西。相反,它會(huì)根據(jù)窗口尺寸決定顯示哪些內(nèi)容。
上圖:不同分辨率下響應(yīng)式布局的例子。
問(wèn)題1:菜單折行
如果在頁(yè)面頂部使用了導(dǎo)航欄,當(dāng)頁(yè)面展現(xiàn)在小屏幕上時(shí),響應(yīng)式設(shè)計(jì)通常會(huì)把它“掰”成更緊湊的格式,但這并非總是有效,如果顯示區(qū)域比斷點(diǎn)更寬,又不足以在一行顯示所有菜單項(xiàng)的話(huà)。結(jié)果會(huì)導(dǎo)致菜單的折行。
有些方法可以解決這個(gè)問(wèn)題。其一,減少導(dǎo)航欄中橫排菜單項(xiàng)的數(shù)量,將它們分門(mén)別類(lèi)。然后選中某類(lèi)時(shí),你可以通過(guò)下拉菜單來(lái)顯示子類(lèi)。
其二,減少斷點(diǎn)的數(shù)值。應(yīng)該以導(dǎo)航欄開(kāi)始出問(wèn)題的實(shí)際數(shù)值為準(zhǔn),而非具體設(shè)備尺寸。
其三,不同設(shè)備使用不同方式,例如滑動(dòng)抽屜。
問(wèn)題2:使用固定寬度圖片
內(nèi)容區(qū)域通常都隨窗口尺寸變化。所以當(dāng)固定寬度圖片超出顯示區(qū)域時(shí),圖片就被裁剪了。
上圖:糟糕的固定寬度圖片例子,它太大了。于是出現(xiàn)了滾動(dòng)條,內(nèi)容被推到屏幕之外。
通過(guò)給圖片設(shè)定相對(duì)單位,可以避免這個(gè)問(wèn)題?;蛘呤褂弥С猪憫?yīng)式的框架(比如Bootstrap),使用響應(yīng)式圖片class名來(lái)控制(例如 class=”img-responsive”)。
上圖:同樣的元素,用響應(yīng)式圖片class名的方式,滾動(dòng)條就不見(jiàn)了。
問(wèn)題3:元素的扭曲
這有點(diǎn)晦澀難懂,但本質(zhì)上,布局顯示在小窗口上的時(shí)候,所有未經(jīng)處理的列都會(huì)以行的形式呈現(xiàn)。這是個(gè)問(wèn)題,因?yàn)閮?nèi)容的扭曲會(huì)不經(jīng)意地改變?cè)O(shè)計(jì)的層級(jí)。
上圖:列變成了行,扭曲了內(nèi)容。
解決方法顯而易見(jiàn),但令人驚奇的是,仍有很多人在糾結(jié)它:只要明確地設(shè)定元素的寬度、高度、內(nèi)邊距。如果它移出所處位置,蓋住了其他元素,可以通過(guò)將它包裹在div容器中,設(shè)置外邊距,迫使它回到原本的地方。
規(guī)劃有助于避免問(wèn)題