內容詳情

對網站響應式設計的重新思考

作者: 廣西桂林日b軟件有限公司 整理   發布時間:2017-07-19 18:59:48

QQ截圖20170504133927.png

最近在知乎上回答過響應式的問題,也重新對網頁響應式設計做了一個新的思考,我給整理總結了一下。

就目前來說(我就把時間劃分到2015年以後吧,之前的網頁就不拿來批判是否考慮響應式了),對於一個web,響應式是最基本的要求,說簡單也簡單,但是要處理好每一個細節不是那麽容易的,響應式也是必修課,必然導致前端要提升自己的能力。

網站如果不支持響應式或者響應式很粗糙,誰會買單?

或許國內的大部分網站並不刻意要求響應式,就算要求響應式,大部分適配後的網站效果也是非常粗糙的,總體來說國內的網頁對響應式有比較高的需求的都屬於一些要求高的或者專業性很強的網站,就算你不做響應式,直接讓網頁按照PC端顯示的效果一樣(使用類似的代碼,雖然不建議這樣做,但這能有效確保具有固定尺寸的網頁能按預期顯示),直接適配手機,客戶也會買單。境外大部分客戶的網站,最基本的要求,不滿足響應式不會買單。

該不該做兩套版本?

對於大多數網站,做兩套版本不是明智的選擇,因為後期維護成本,製作成本,調試成本,開發成本等都會增加很多,而且互聯網發展迅速,網頁過時的很快,一般情況,不值得花大量時間做兩套隨時會過時的頁麵。並且大多數網站有常用的開源程序的約束,做兩套對後端的擴展也會有更高的要求,可能會增加後端和服務器端的工作量。一般做兩套,適用於一些擁有自己的源程序的大平台或者大型網站或者一些知名的網站。大部分網站,無需做兩套。(當然如果你錢多,團隊杠杠的,時間精力也多,就忽略此段落)

響應式技術的發展怎樣?

日b不用糾結於什麽fluid流布局還是其它什麽布局的,日b隻要考慮首先把具體的項目按照預期設計表現出來即可,然後再深入考慮其它複雜的知識點。很多細節有單獨學習的必要,但是不一定都能折騰進實際項目中。實際項目還是要盡量精簡代碼,減少開發和後期維護成本,隻要能夠滿足多種設備,並且利用響應式有效控製不同尺寸圖片的加載,在現在的不斷提升的互聯網網速環境下,一樣訪問速度會很快。

對於網頁的響應式設計,我不會存在正麵還是負麵的評價,因為它是基礎啊,你得適應互聯網發展適應發展需要啊,適應客戶需要啊,做一套網頁,做好這個基礎,是理所當然的。對於一項基本功,沒有必要說它好還是不好。

一個真正好的響應式,是能夠處理不同尺寸的圖片的,如果CSS不能滿足需求,現在有很多成熟的結合JS的技術手段,可以配合CSS做到更優秀的相應,不會大幅度影響加載速度,它完全可以達到兩套web的效果。畢竟你不是做APP,是做網頁。如果你要拿APP的原生交互效果和流暢程度和web相比,我覺得偏題了,沒有必要,本身它們就是互補的東西,你不要他要,沒有誰排斥誰的必要。

如果還沒見過優秀的響應式網站,可以去看看FWA上麵的很多獲獎的移動端網站。

總結

現在的響應式技術,已經很發達了,不但能滿足不同設備的適配,還能夠從交互,從體驗,從加載速度等方麵進行匹配。現在的響應式技術,不能和響應式才開始流入的那幾年相提並論,什麽代碼冗餘等等的負麵東西可以忽略了。其實對於響應式這個東西,剩下的,隻是願不願意學更加先進的技術,願不願意研究和發現,願不願意使用到實際項目中的問題而已。

我自己並不做獨立的前端工作,也不是什麽大牛公司的前端開發,我隻是為了服務自己設計的東西而已。隻不過我也經過了幾年的折騰,兼容性,響應式各種,用過很多開發框架,學過研究過不少進口知識,做過一些被認可的東東。我現在對於響應式設計,隻有一個方向:

  • 盡可能精簡代碼
  • 盡可能以最少的ResponsiveBreakpoints兼容更多的設備
  • 盡可能優化加載速度
  • 盡可能避免使用JS(Retina圖片適配我一般使用JS,相對來說和響應式分開,會更加靈活,避免Retina的圖片適配也使用CSS)
  • 盡可能做到和PC端一樣流暢的交互效果

小工具

檢測網頁的性能,包含基本的響應式性能:GoogleInsights