首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

Flexbox 佈局實戰:兼容性現狀與選型建議

     編輯:程式設計疑難解答

瀏覽器兼容性 (Can I Use 數據)

瀏覽器首支援完整 Flexbox 版本備註
Chrome29+無前綴
Firefox28+無前綴
Safari9+舊版需 -webkit-
Edge12+
IE11 (部分)10 需 -ms-,有眾多 Bug;IE 9 及以下完全不支援
iOS Safari9.2+
Android WebView4.4+舊版需 -webkit-

決策矩陣

專案需求建議
需支援 IE 9/10、舊版 Android 4.3-不使用 Flexbox,採用 Float/Inline-block/Table 佈局或框架 (Bootstrap 3 grid)。
僅現代瀏覽器、內網、Hybrid App、移動端優先大膽使用 Flexbox,甚至 Grid,開發效率與維護性極大提升。
需兼容 IE 11可用 Flexbox,但需:
① Autoprefixer 自動加前綴
② 避免已知 IE 11 Bug (min-height、flex-basis、align-items: stretch 等)
③ 充分測試

常用 Fallback 策略

.container {
    display: flex;           /* 現代瀏覽器 */
    display: -webkit-flex;   /* 舊 WebKit */
    display: -ms-flexbox;    /* IE 10 */
}
.item {
    flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
}
/* 建議:交由 PostCSS + Autoprefixer 自動處理,勿手寫前綴 */

結論

2024 年,**新專案無歷史包袱首選 Flexbox/Grid**;維護老專案視具體兼容性矩陣決定。工具鏈 (Webpack/Vite + PostCSS) 已自動解決 99% 前綴問題。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved