現在移動裝置越來越普及,使用者使用智慧型手機、pad上網頁越來越普遍。但是傳統的fix型的頁面在移動終端上無法很好的顯示。因此,ethan marcotte提出一種響應式web設計的概念。
響應式web設計的英文為responsive web design,簡寫為rwd。
在圖書館借到一本o'reilly的《head first moblie web》,裡面講到了一些做rwd的技巧。
今天學到的兩招是:
1、使用media資訊來幫助判斷螢幕尺寸
2、使用百分比來替換以前使用的畫素來宣告寬度等與尺寸相關的資訊
看看今天試驗的成果(
全螢幕顯示頁面時
將瀏覽器拉窄模仿移動裝置時:
如何做到呢?
首先,在css檔案中使用media語句
要想想讓網頁可以根據不同的裝置尺寸做出相應,就需要事先為各種尺寸做好準備。例如,在正常的pc顯示器中,可能會分三欄顯示,如:
而在移動裝置,比如智慧型手機中可能就需要分布成流式,如下:
顯然,這兩者的css分布是不同的,上圖的三欄顯示中,左右兩邊的column需要各自float到所需的方向上,而下圖的流式布局中,各個塊之間是序列向下顯示的。因此,可知至少對於每乙個不同的css分布,應該有不同的策略。現在可以編輯兩個不同的css檔案,然後使用指令做引入。但是還可以使用@media語句,進行邏輯判斷。如下:
@media screen and (min-width:480px)
其中,screen是media眾多態別的一種,其他常見的media型別還有print。而min-width是media的feature之一。media有很多feature可以用來幫助我們做邏輯判斷,常見的還有monochrome(單色的)、max-width等。
借助這個@media語句,我們就可以做出類似if-else的邏輯判斷了。例如,例子中給出的兩種不同情況的判定,分別使用如下語句:
/*語句中,and代表的是邏輯「and」,如果想表示邏輯「or」可以使用「,」,例如**********desktop structural css************
*/@media screen and (min-width:481px)
/***********mobile structural css************
*/@media screen and (max-width:480px)
@media print, screen and (monochrome)
就表示處於「print裝置上」或「單色的螢幕裝置」中時,使用大括號中的css設定。
其次,將與尺寸相關的畫素單位替換成百分比形式。
初次設計時,就直接按照百分比進行設計,如
另外,也可以按照傳統網頁的設計方法,先定好各個區域的畫素,如main區域為460px,那麼如果設定的整個網頁寬度為960px的話,則main的寬度為460/960=47.92%,重構網頁的話可以採用這種換算的方法。
響應式web設計(一)
最近在研究響應式web頁面設計,入門級media queries 即 查詢,查詢在css3中引入,作用是允許設定表示式檢查 環境,用來確定應用不同的樣式。查詢應用的兩種方式 一.在引入樣式表的時候判斷 尺寸,根據尺寸引入不同的樣式表,如下 表示當 分表率小於620畫素時,應用a樣式表 畫素只是 查詢...
響應式web設計
initial scale 1.0 script 不使用width px 只使用百分比寬度width xx 或者width auto 字型也不能使用絕對大小 px 而只能使用相對大小 em 如 font normal 100 helvetica,arial,sans serif 字型大小是頁面預設大...
響應式web設計
響應式網頁設計是時下網頁設計領域最熱門的話題之一,該概念由著名網頁設計師 ethan marcotte 在2010年5月份提出,其目標是要讓設計的 能夠響應使用者的行為,根據不同終端裝置自動調整尺寸。簡而言之,就是乙個 能夠相容多個終端 而不是為每個終端做乙個特定的版本。那麼,怎麼實現響應式設計呢?...