谷順利
(上海珀泰藍衛浴有限公司 上海 201417)
隨著互聯網技術的不斷發展各種智能產品不斷涌現,第五代移動通信技術(5th Generation Mobile Communication Technology,5G)越來越普遍,通過手機上網成了人們的首要選擇。但手機屏幕尺寸及分辨率是多種多樣的,在不同尺寸和分辨率下瀏覽網頁時,便會產生不同的視覺效果。當使用者瀏覽一個特定網頁時,網頁在手機上呈現的效果與電腦上所呈現的效果一樣時,會導致使用者在獲得資訊時不斷地將圖片放大或縮小,從而對使用者在獲得有效信息時產生一定的影響[1]。在兼容各種尺寸和分辨率設備尚未問世前,設計者會針對各種規格、分辨率的設備進行頁面設計,不但工作量巨大且后期維護困難。由于各種各樣的終端設備不斷問世,這個辦法顯然是行不通的,因此響應式網頁能很好地解決上面提到的問題,對使用者來說,不同的系統平臺、設備大小、分辨率,均能夠保持良好的版面布局[2]。為滿足使用者對網頁連貫性的需求,本文提出了一種以Bootstrap 架構為基礎響應式網頁設計(responsive web design,RWD)理念,使用通用網頁框架來作為模板,能夠適應不同屏幕尺寸和分辨率的設備,從而提高使用者的使用體驗。
采用響應式技術開發方法,可以根據不同大小的瀏覽設備,自動調整版面結構、元素規格樣式,將內容以不同的形式顯示出來。該系統能夠更好地進行代碼重組,從而可以避免重復編寫不同版面的網頁,大大減少開發時間和費用。
由伊桑·馬科特提出的RWD,是指能夠根據屏幕大小,進行網頁的相應調整[3]。在網頁設計中,注重模塊化設計,要求一個符合標準的模塊可以“擴展”“無浸染”,并且可以在任意一臺手機上進行正常的展示。在所有的設備中,響應式網頁均可以正常適應,無需為每一個設備建立子網站。簡單來說,就是一個網站可以兼容多個終端,而非針對某一種終端。
傳統網頁均是固定大小的方框(網格),不能隨外部環境而變化。而響應式網頁就像是流水一樣,可以根據顯示界面大小進行自動調節。響應式網頁中常見的流線型設計理念為元素寬度按百分比進行設置。因此,通常響應式設計比喻成一個瀑布,在小屏幕上,所有的元素均會被自動地豎直排列和分配。最關鍵的是,能應對各種大小和類型的屏幕進行調整,以獲得最佳的顯示效果。在傳統的網頁設計中,網頁的版式是3 欄、標題和腳印,標題主要展示站點logo、簡介和導航菜單(也就是導航欄)。頁面的底部包含了輔助導航,聯系方式和版權信息。根據網頁設計的特點,結合移動用戶瀏覽要求,采用Bootstrap 架構將網頁導航條移動到網頁頂部,并將標題插入到網頁的左右兩側和內容區域,用于顯示logo、簡介和快速搜索。這種設計可以最大限度地發揮邊框優勢,當需要時會自動地把導航條縮進到菜單欄中。
響應式網頁能夠滿足不同的用戶需要,為用戶帶來最佳訪問體驗。國內許多知名網站,如知乎、時尚頻道、新浪時尚、淘寶、百度等,以知乎最具代表性,在互聯網搜索越來越流行的時代,采用了響應式設計,該網站能夠在各種大小的終端設備上正常地顯示,并為通過手機終端訪問提供了靈活的瀏覽方法,提高了用戶的體驗[4]。
2011年Twitter 發布的Bootstrap 框架,擁有HTML、CSS、JavaScript 等應式Web 框架。之所以采用Bootstrap框架,是因為Bootstrap 可以讓用戶快速建立反應頁面,可以很好地適應各種大小和分辨率的智能設備。此外,該系統提供了一套響應式移動設備優先光柵系統,當屏幕或視窗大小增大時,系統會將其分為12 個欄以簡化頁面布局,方便用戶操作[5]。
作為CSS3 模塊的一部分,媒體查詢是響應式設計的關鍵技術。在識別出使用者所用屏幕大小和分辨率后,會自動將設備與對應的CSS3 風格相對匹配,以便在裝置上提供最佳的瀏覽體驗。媒體查詢包括媒體類型和條件表達,用以檢測媒體類型,媒體特征和邏輯操作。CSS3 風格可以通過媒體查詢類型設定的媒體特征來進行匹配,如,當媒體發現當前裝置是screen 電腦畫面,而當前的瀏覽器視角≥500 px,那么CSS3 中的風格背景將會變為黑色,代碼如下所示。
@media screen and(min-width:500px){
body{
background-color :red;
}
與固定布局相比,流體布局是衡量站點大小的單位,固定布局是指最外層框架是固定像素。而流式布局不需要考慮設備和屏幕大小,而是采用百分比。網站具有良好彈性和靈活性[6],流式布局也是當前主流布局方式之一。當容器改變時,會根據具體情況進行尺寸及位置調整,而流式布局則與媒體查詢緊密相連。布局格式,如圖1所示。

圖1 布局格式
Bootstrap 框架在目前主要瀏覽器中實現良好兼容,具體瀏覽器兼容性見表1。

表1 瀏覽器兼容性
在使用手機瀏覽網頁時,頁面導航條可以根據Bootstrap 提供的折疊式導航條來進行反應。而導航條會隨著屏幕的改變而改變,把要放在小屏幕上的內容(即導航條內容),設置成
實現響應式的主要環節是柵格系統,它是用相對固定的格子來完成網頁布局,把網頁內容和信息按一定順序排列在格子里,光柵是由行(row)和列(column)組成的頁面布局,該設計優點是可以根據不同的終端設備來設計頁面。Bootstrap 柵格系統,是CSS 風格的一個類。在Bootstrap 中container 被稱作是一個容器,它的寬度固定,支持響應布局[7]。Bootstrap 柵格參數見表2,可見,在這個類別前、后面一個從1~12 的數字。它的設計原則是根據容器的百分數來確定尺寸,采用柵格系統,每行最多12 個欄,行將平均分為12 部分,然后按照不同的位置排列,通過媒體查詢,可以對不同的終端設備做出反應。

表2 Bootstrap 柵格參數
當窗口寬度>1 200 px 時,col-lg-會被自動調用,如果是3 列,則代碼如下。
當窗口寬度為992 px~1 200 px 時,col-md-會被自動調用,如果比例為6 ∶4 ∶2,則代碼如下。
當窗口寬度為768 px~992 px 時,如果是3 列,則代碼如下。
傳統導航條通常是在網頁頂端橫向顯示的,不能隨頁面的變化而更改。使用列表進行排版,利用左邊浮點特征來達到橫向顯示。但如果在低分辨率的終端設備下,網頁很可能會被遮擋或轉換,從而降低用戶的使用體驗。同時,Bootstrap 還提供了導航部件,它可以將內容按照實際情況進行折疊,且可以隨著視野寬度增大而橫向擴展。實現導航條的關鍵在于要在導航中設置中斷點,在導航條中增加對應部件,并根據媒體要求做出相應修改。某信息管理系統網站的外觀設計要兼顧外部、內部、前端和后臺三個方面。在本次網頁設計中,將網頁設計分為3 個區域:頂部區域、左側導航區和內容區。某管理系統主頁,如圖2所示。

圖2 某管理系統主頁
3.2.1 HTML5 結構的搭建
Bootstrap 框架是基于HTML5 完成的,因此網站架構應該與HTML5 的架構相一致,HTML5 架構如下。
html lang—" ">
3.2.2 Bootstrap 引入
網站以Bootstrap 架構為基礎,為了支持Bootstrap相關內容,需要在網頁中導入相應文檔,導入Bootstrap相關文件遵循以下操作。
href="lib/bootstrap/css/bootstrap.min.css">
script src=" lib/bootstrap/js/bootstrap.min.js" >
媒體查詢功能是響應式設計的關鍵,在本文應用案例設計中,根據使用者的實際使用狀況及應用終端進行調研,發現該網站所適應的產品有3 種類型:電腦、平板、智能手機。因此在設計時采用了less 文檔,利用媒體查詢方法來建立臨界分界點。在Bootstrap 框架的支持下,按照小屏幕移動設備終端(<768 px)、小屏幕平板智能終端(≥768 px)、中等屏幕智能終端(≥992 px)、大屏幕智能終端(≥1 200 px)進行劃分。由于Bootstrap框架默認將手機作為優先權,因此一般不會在超小屏幕上顯示與媒體查詢的有關代碼。盡管CSS 會影響到各種設備和頁面實際使用,但可以將CSS 影響控制在最小的屏幕尺寸。為了實現響應式Web 設計,必須要有可靠的媒體查詢功能,Bootstrap 框架可以為用戶提供相應的代碼,因為Bootstrap 框架包含了大量的代碼,所以在設計過程中,用戶不必花費太多的時間去修改和調整。
手機應用程序開發的特殊性,使得在設計過程中,會出現大量不同風格的圖片,因頁面版面結構會對特定位置造成較大影響。結合響應式設計理念,網站會根據不同的設備(使用環境)來調整頁面大小和圖片尺寸,以及調整整個頁面的布局,以確保網站的靈活性,從而適應不同設備的實際應用。這里的流式布局,是為了讓網頁中各個要素均保持浮動特性。一般情況下,網頁元素均會在網頁左邊浮動,當網頁寬度不足以容納1 個元素時,這個元素就會被移到下方,并隨著使用者的向上移動而逐漸顯現。采用流式布局,可以保證網站中每個要素均能得到合理的位置和布局。
在響應式Web 設計時,若使用PC 終端設備(1 200 px以上)來瀏覽網頁,左邊導航條將會被中斷點類型colmd-2 所控制。因為PC 端頁面寬度比較大,所以在頁面右邊內容將會出現2 列橫向的顯示方式。在少數情況下,如果PC 端的顯示寬度小于768 px,那么左邊的導航條將由col-md-2 所控制。在此情形下,頁面上方菜單將會由于頁面寬度不夠而被隱藏,或轉換成獨立按鍵,以持續提供對應功能。基于智能手機設備,左邊導航條寬度會由斷點類型col-xs-4 決定,因為頁面寬度在較小的水平,所以頁面內容會被調節成一條縱向單行。即當多個不同斷點被綜合使用時,網頁效果不會因設備分辨率和尺寸而改變。而column 列會根據不同畫面分辨率和屏幕尺寸表現出相應功能,從而為用戶提供全面的使用體驗,以實現響應式網頁設計。
Bootstrap 是一組前端開發架構,它的靈活性、可擴充性促進了響應式網頁開發,并加速了響應式相關技術的發展。基于BootStrap 的響應式網頁設計,可以實現不同手機設備的兼容性。它可以自動判斷不同設備在不同環境下的用戶行為,從而自動地調整頁面,無論用戶使用何種設備,屏幕的位置是水平的還是垂直的,頁面均能自動地切換分辨率、圖片大小和相應的文字功能,從而滿足不同設備的正常顯示和瀏覽。既節約了大量的人力和資源,又確保了PC 端和手機頁面的連貫性。