關(guān)于自適應(yīng)分辨率調(diào)整選擇 對客戶端分辨率自適應(yīng)策略的研究
(作者未知) 2010/8/7
[摘要] 從網(wǎng)頁信息傳播角度提出網(wǎng)頁對客戶端分辨率的適應(yīng)問題,將解決方法歸納為調(diào)整和選擇策略;闡述了兩種實現(xiàn)策略的原理與具體實現(xiàn)方法。
[關(guān)鍵詞] 自適應(yīng)分辨率調(diào)整選擇
一、前言
網(wǎng)頁是現(xiàn)代信息傳播的媒介,網(wǎng)頁在客戶端的顯示效果直接關(guān)系到信息傳播的有效性。那么如何讓自己的網(wǎng)頁自動適應(yīng)瀏覽者的顯示分辯率呢?解決方法是多種多樣的,但歸結(jié)起來不外乎兩種策略:第一種就是調(diào)整策略即調(diào)整網(wǎng)頁要素以適應(yīng)分辨率的變化。第二種就是選擇策略即根據(jù)分辨率的不同選擇不同規(guī)格的網(wǎng)頁或網(wǎng)頁樣式。下面我分別闡述其實現(xiàn)原理和操作。
二、網(wǎng)頁調(diào)整策略及其實現(xiàn)
網(wǎng)頁調(diào)整策略就是根據(jù)網(wǎng)頁的信息傳達的需求,調(diào)整影響網(wǎng)頁要素屬性設(shè)置以期達到與瀏覽器顯示分辨率自動匹配的策略。表格是目前網(wǎng)頁制作大量使用的手段之一,也是影響網(wǎng)頁信息傳達的主要因素;當(dāng)分辨率調(diào)整時,窗口尺寸發(fā)生變化,導(dǎo)致表格被壓縮或拉伸,顯示位置發(fā)生變化,從而影響了網(wǎng)頁的整體顯示效果。究其成因可能有兩種:一種原因?qū)⒈砀癯叽缭O(shè)置為固定值,當(dāng)窗口尺寸變小時,表格被壓縮;或者表格尺寸設(shè)為百分比形式,當(dāng)拉伸時表格被拉大,同樣影響網(wǎng)頁的正確顯示。二是表格對齊方式的設(shè)置,表格的默認(rèn)對齊方式設(shè)置為居左,這樣分辨率設(shè)置變化發(fā)生變化時,比如提高分辨率,窗口尺寸變大,表格右側(cè)就會出現(xiàn)大量空白,從而也會影響網(wǎng)頁的顯示效果。
對于上面提到的兩種情況,我們可以采用簡單的表格嵌套的辦法加以解決,即內(nèi)層表格以較小的固定尺寸居中顯示,確保傳遞效果的實現(xiàn),外層表格則作為背景按百分比居中顯示。既保證了所傳遞信息的有效性,同時又能自動保證網(wǎng)頁有一個良好的外觀。
上述處理只是簡單的實現(xiàn)了表格網(wǎng)頁對顯示分辨率的自動適應(yīng),其應(yīng)用還存在很大局限性,比如內(nèi)層表格主要用來傳遞信息,其尺寸是以假想瀏覽者的最小分辨率為設(shè)計前提;當(dāng)瀏覽者的分辨率提高,內(nèi)層用于傳遞信息的表格并不會變大,信息傳播的效果也就必然會受到影響。
三、網(wǎng)頁選擇策略及其實現(xiàn)
網(wǎng)頁的選擇策略就是根據(jù)網(wǎng)頁的信息傳達的需求,對網(wǎng)頁或網(wǎng)頁構(gòu)成格式進行選擇以期與傳播對象顯示分辨率自動適應(yīng)的策略。根據(jù)解決策略在實現(xiàn)方法的不同,我們可將其歸納為兩種:
1.調(diào)用適合不同分辨率的網(wǎng)頁
這種做法是我們所期待的,也是算法上容易實現(xiàn)的一種。我們可以事先制作出展示信息內(nèi)容相同但適合不同分辨率設(shè)置的網(wǎng)頁,然后,檢測瀏覽者顯示分辨率的設(shè)置,調(diào)用相應(yīng)的網(wǎng)頁,從而保證信息傳播的有效性。這種調(diào)用適合不同分辨率網(wǎng)頁的方法的關(guān)鍵就在于如何測試瀏覽者的顯示分辨率。通過javascript腳本的編寫可以輕松實現(xiàn)該操作。
首先準(zhǔn)備2個可供在800*600像素和1024*768像素下調(diào)用的頁面htm1.htm和htm2.htm,分別為在頭文件中加入Javascript代碼,利用腳本查驗瀏覽者的顯示器分辯率;然后根據(jù)常用的分辨率設(shè)置設(shè)定調(diào)用條件,調(diào)用相應(yīng)規(guī)格網(wǎng)頁。腳本應(yīng)用實例如下:
在上述情形中,網(wǎng)頁載入時首先要進行分辯率的檢測;如果檢測到符合if條件所設(shè)定顯示器寬度值如常用的分辨率設(shè)置有1024*768和800*600,就會從服務(wù)器調(diào)用相應(yīng)的網(wǎng)頁。但是,這種設(shè)置基本上解決了常用顯示分辨率設(shè)置條件下網(wǎng)頁的正確顯示問題,但仍然存在不完善的地方,比如非常規(guī)的顯示分辨率設(shè)置,顯示仍然有可能出現(xiàn)問題。為此,我們可對上述代碼進行改進,使之適合分辨率的變化,程序改進代碼如下:
上述改進中,MultiHref()函數(shù)的參量設(shè)置了4種,調(diào)用時可以分別調(diào)用4種不同的網(wǎng)頁,考慮到網(wǎng)頁制作的工作量問題,上述改進中只設(shè)置了兩個網(wǎng)頁htm1和htm2供程序調(diào)用。
2.調(diào)用適合不同分辨率的css(樣式表文件)
CSS(Cascading Style Sheet) 即層疊樣式表 ,它是一系列格式規(guī)則,主要用來控制網(wǎng)頁內(nèi)容的外觀。使用 CSS 樣式可以非常靈活并可以精確地控制網(wǎng)頁外觀,例如css可以精確確定網(wǎng)頁布局、字體和表格樣式等。Css的這些特點使其在網(wǎng)頁制作中被廣泛的應(yīng)用。在網(wǎng)頁中加入樣式表的方法有內(nèi)部嵌入方式或外部鏈接方式。其中外部鏈接方式就是讓網(wǎng)頁調(diào)用獨立的css文件用以控制網(wǎng)頁顯示的外觀,這種方式為實現(xiàn)網(wǎng)頁對分辨率的自動適應(yīng)提供了可能性。在設(shè)計網(wǎng)頁時,事先建立一組適合不同分辨率的css文件,然后根據(jù)css文件建立網(wǎng)頁布局;在頁面加載過程中取得屏幕分辨率,重新設(shè)定頁面元素應(yīng)該應(yīng)用的css文件。選用不同的鏈接樣式的方法也可用javascript腳本來實現(xiàn),其代碼可如下:
在使用時,將上述代碼嵌入到與之間即可實現(xiàn)適合不同分辨率(未完,下一頁)
|