Frameset框架優缺點 轉自新浪博客

Frameset框架優缺點

 (2011-02-12 13:29:26)

原地址:http://blog.sina.com.cn/s/blog_4a4b1b010100p6ro.htm
HTML框架簡述

一個瀏覽器窗體可以通過幾個頁面的組合來顯示。我們可以使用框架來完成(frames)這項工作。(框架可以把HTML文檔分爲多個頁面)

框架頁使用了表格的方式組合,可以分爲數行與數列。

框架的優點

  • 重載頁面時不需要重載整個頁面,只需要重載頁面中的一個框架頁(減少了數據的傳輸,加快了網頁下載速度)
  • 技術易於掌握,使用方便,使用者衆多,可主要應用於不需搜索引擎來搜索的頁面
  • 方便製作導航欄 

框架的缺點(iframe的缺點與frame類似)

  • 會產生很多頁面,不容易管理
  • 不容易打印(目前只能實現分框架頁面的打印,不能實現對frameset的打印)
  • 瀏覽器的後退按鈕無效(只能針對實現當前光標所在頁面的前進與後退,無法實現frameset整個頁面的前進與後退)
  • 代碼複雜,無法被一些搜索引擎索引到(框架結構(幀結構)的不能爲每個網頁都設置一個標題(TITLE),更爲糟糕的是,有些搜索引擎對框架結構的頁面不能正確處理,會影響到搜索結果的排列名次)
  • 多數小型的移動設備(PDA 手機)無法完全顯示框架
  • 多框架的頁面會增加服務器的http請求
  • 由於上面諸多缺點,因此不符合標準網頁設計的理念,已經被標準網頁設計拋棄,目前的html5已不再支持此標籤 
iframe的缺點
1、在網頁中使用框架結構最大的弊病是搜索引擎的“蜘蛛”程序無法解讀這種頁面。當“蜘蛛”程序遇到由數個框架組成的網頁時,它們只看到框架而無法找到鏈接,因此它們會以爲該網站是個死站點,並且很快轉身離去。對一個網站來說這無異於一場災難。

如果你想銷售產品,你需要客戶;如想得到客戶,你首先要讓人們訪問你的網站,而要做到這一點,你就非求助於搜索引擎不可。你花費了大量的時間、精力和金錢開設了一家網上商店,卻又故意不讓搜索引擎檢索你,這就好象開家零售商店,卻將窗戶全部漆成黑色,而且還不掛任何招牌一樣。

2、框架結構有時會讓人感到迷惑,特別是在幾個框架中都出現上下、左右滾動條的時候。這些滾動條除了會擠佔已經非常有限的頁面空間外,還會分散訪問者的注意力。訪問者遇到這種網站往往會立刻轉身離開。他們會想,既然你的主頁如此混亂,那麼網站的其他部分也許更不值得瀏覽。

3、鏈接導航問題。使用框架結構時,你必須保證正確設置所有的導航鏈接,如不然,會給訪問者帶來很大的麻煩。比如被鏈接的頁面出現在導航框架內,這種情況下訪問者便被陷住了,因爲此時他沒有其他地方可去。


HTML框架結構與語法

框架的DTD

使用框架頁時要使用它特有的DTD(HTML文檔結構)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
HTML框架使用frameset標籤把瀏覽器的窗體分爲多個行與列的框架頁,每個頁面又使用了frame標籤定義,同時應該使用noframes定義瀏覽器不支持框架時顯示的內容。本節將介紹frame標籤,下節介紹frameset標籤(引用網址:http://www.dreamdu.com/xhtml/tag_frame/)。

框架結構

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"> <html> <head> <title>夢之都框架頁示例</title> </head> <frameset rows="120, *, 80"> <frame src="http://www.dreamdu.com/xhtml/" /> <frame src="http://www.dreamdu.com/css/" /> <frame src="http://www.dreamdu.com/javascript/" /> <noframes> <body> 夢之都使用了框架技術,但是您的瀏覽器不支持框架, 請升級您的瀏覽器以便正常訪問夢之都。 </body> </noframes> </frameset> </html>
通過使用frameset的rows屬性(120, *, 80)定義了一個三行的框架,第一行120像素,第三行80像素,第二行是整個頁面減去第一行與第三行剩下的像素。frameset裏面包含三個frame,每個frame都使用了src屬性定義了框架頁所包含的頁面,最後的noframes定義了瀏覽器不支持框架時所顯示的內容。

frame標籤

frame 標籤 -- 定義frameset標籤中每個框架頁的內容
frame標籤是單獨出現的,<frame />
引用網址:http://www.dreamdu.com/xhtml/tag_frame/
屬性:
Common -- 一般屬性
frameborder -- 定義了內容頁的邊框,取值爲(1|0),缺省值爲1
1 -- 在每個頁面之間都顯示邊框
0 -- 不顯示邊框
longdesc -- 定義框架頁的說明
marginwidth -- 定義了框架中HTML文件顯示的左右邊界的寬度,取值爲px,缺省值由瀏覽器決定
marginheight -- 定義了框架中HTML文件顯示的上下邊界的礦度,取值爲px,缺省值由瀏覽器決定
name -- 在一個框架頁鏈接到另一框架頁時使用(另一個框架頁可以使用target定義鏈接頁)
noresize -- 定義了瀏覽者是否可以通過拖拽改變框架頁尺寸,取值爲(noresize)
scrolling -- 定義是否有滾動條,取值爲(yes|no|auto),缺省值爲auto
yes -- 顯示滾動條
no -- 不顯示滾動條
auto -- 當需要時再顯示滾動條
src -- 定義了內容頁URL 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章