談談瀏覽器兼容性問題
爲何瀏覽器會存在兼容問題?
- 同一瀏覽器,版本越老,存在bug越多,相對於版本越新的瀏覽器,對新屬性和標籤、新特性支持越少。
- 不一樣瀏覽器,核心技術不一樣,標準不一樣,實現方式也有差別,最終呈現出來在大衆面前的效果也是會有差別。
處理兼容問題的思路:
1. 要不要作?
- 產品的角度(產品的受衆、受衆的瀏覽器比例、效果優先仍是基本功能優先)。
- 成本的角度 (有無必要作某件事)。
2. 作到什麼程度?
3. 如何作?
- 根據兼容需求選擇技術框架/庫(如jquery 1.x.x)。
- 根據兼容需求選擇兼容工具:html5shiv、Respond.js、CSS Reset、normalize.css、Modernizr.js、 postcss。
- 條件註釋、CSS Hack、js 能力檢測作一些修補。
漸進加強和優雅降級
- 漸進加強(progressive enhancement): 針對低版本瀏覽器進行構建頁面,保證最基本的功能,而後再針對高級瀏覽器進行效果、交互等改進和追加功能達到更好的用戶體驗
- 優雅降級(graceful degradation): 一開始就構建完整的功能,而後再針對低版本瀏覽器進行兼容
歡迎關注本站公眾號,獲取更多信息