
- HTML 教程
- HTML - 首頁
- HTML - 路線圖
- HTML - 簡介
- HTML - 歷史與演變
- HTML - 編輯器
- HTML - 基本標籤
- HTML - 元素
- HTML - 屬性
- HTML - 標題
- HTML - 段落
- HTML - 字型
- HTML - 塊
- HTML - 樣式表
- HTML - 格式化
- HTML - 引用
- HTML - 註釋
- HTML - 顏色
- HTML - 圖片
- HTML - 圖片地圖
- HTML - 內嵌框架
- HTML - 短語元素
- HTML - 元標籤
- HTML - 類
- HTML - ID
- HTML - 背景
- HTML 表格
- HTML - 表格
- HTML - 表頭與標題
- HTML - 表格樣式
- HTML - 表格 Colgroup
- HTML - 巢狀表格
- HTML 列表
- HTML - 列表
- HTML - 無序列表
- HTML - 有序列表
- HTML - 定義列表
- HTML 連結
- HTML - 文字連結
- HTML - 圖片連結
- HTML - 郵箱連結
- HTML 顏色名稱與值
- HTML - 顏色名稱
- HTML - RGB
- HTML - HEX
- HTML - HSL
- HTML 表單
- HTML - 表單
- HTML - 表單屬性
- HTML - 表單控制元件
- HTML - 輸入屬性
- HTML 多媒體
- HTML - 影片元素
- HTML - 音訊元素
- HTML - 嵌入多媒體
- HTML 頁首
- HTML - 頭元素
- HTML - 新增 Favicon
- HTML - Javascript
- HTML 佈局
- HTML - 佈局
- HTML - 佈局元素
- HTML - 使用 CSS 進行佈局
- HTML - 響應式設計
- HTML - 符號
- HTML - 表情符號
- HTML - 樣式指南
- HTML 圖形
- HTML - SVG
- HTML - Canvas
- HTML API
- HTML - Geolocation API
- HTML - 拖放 API
- HTML - Web Workers API
- HTML - WebSocket
- HTML - Web 儲存
- HTML - 伺服器傳送事件
- HTML 其他
- HTML - 文件物件模型 (DOM)
- HTML - MathML
- HTML - 微資料
- HTML - IndexedDB
- HTML - Web 訊息傳遞
- HTML - Web CORS
- HTML - Web RTC
- HTML 演示
- HTML - 音訊播放器
- HTML - 影片播放器
- HTML - 網頁幻燈片
- HTML 工具
- HTML - Velocity Draw
- HTML - 二維碼
- HTML - Modernizer
- HTML - 驗證
- HTML - 顏色拾取器
- HTML 參考
- HTML - 速查表
- HTML - 標籤參考
- HTML - 屬性參考
- HTML - 事件參考
- HTML - 字型參考
- HTML - ASCII 碼
- ASCII 碼錶查詢
- HTML - 顏色名稱
- HTML - 實體
- MIME 媒體型別
- HTML - URL 編碼
- 語言 ISO 程式碼
- HTML - 字元編碼
- HTML - 已棄用的標籤
- HTML 資源
- HTML - 快速指南
- HTML - 有用資源
- HTML - 顏色程式碼生成器
- HTML - 線上編輯器
HTML - 框架
HTML 框架用於將瀏覽器視窗分成多個部分,每個部分可以獨立載入單獨的 HTML 文件。瀏覽器視窗中的一組框架稱為框架集。視窗被劃分為框架的方式類似於表格的組織方式:分成行和列。
<frame> 標籤不再推薦使用,因為它不受 HTML5 支援。與其使用此標籤,不如使用 <iframe> 或結合 CSS 使用 <div> 來實現類似的效果。
語法
<frameset rows="50%,50%"> <frame name="top" src="link/to/frame1" /> <frame name="bottom" src="link/to/frame2" /> </frameset>
其中 frameset 的 rows 屬性定義了視窗劃分成水平部分的方式。在本例中,視窗被分成兩行,每行佔據可用高度的 50%。
HTML 框架示例
以下是一些示例程式碼,說明如何在 HTML 中操作框架。
在 HTML 中建立框架
要在頁面上建立框架,我們使用 <frameset> 標籤 代替 <body> 標籤。 <frameset> 標籤定義如何將視窗分成框架。<frameset> 標籤的 rows 屬性定義水平框架,cols 屬性定義垂直框架。每個框架都由 <frame> 標籤指示,它定義哪個 HTML 文件應在框架中開啟。
以下是建立三個水平框架的示例。如果您的瀏覽器不支援框架,則會顯示 body 元素。
<!DOCTYPE html> <html> <head> <title>HTML Frames</title> </head> <frameset rows="10%,80%,10%"> <frame name="top" src="/html/top_frame.htm" /> <frame name="main" src="/html/main_frame.htm" /> <frame name="bottom" src="/html/bottom_frame.htm" /> <noframes> <body> Your browser does not support frames. </body> </noframes> </frameset> </html>
建立垂直框架
這裡我們將 rows 屬性替換為 cols 並更改了它們的寬度。這將垂直建立所有三個框架。
<!DOCTYPE html> <html> <head> <title>HTML Frames</title> </head> <frameset cols="25%,50%,25%"> <frame name="left" src="/html/top_frame.htm" /> <frame name="center" src="/html/main_frame.htm" /> <frame name="right" src="/html/bottom_frame.htm" /> <noframes> <body> Your browser does not support frames. </body> </noframes> </frameset> </html>
框架的 name 和 target 屬性
框架最常用的用途之一是在一個框架中放置導航欄,然後在單獨的框架中載入主頁面。
讓我們看下面的例子,其中 **test.htm** 檔案包含以下程式碼
<!DOCTYPE html> <html> <head> <title>HTML Target Frames</title> </head> <frameset cols="200, *"> <frame src="/html/menu.htm" name="menu_page" /> <frame src="/html/main.htm" name="main_page" /> <noframes> <body> Your browser does not support frames. </body> </noframes> </frameset> </html>
我們建立了兩列,用兩個框架填充。第一個框架寬 200 畫素,將包含由 **menu.htm** 檔案實現的導航選單欄。第二列填充剩餘空間,將包含頁面的主要部分,它由 **main.htm** 檔案實現。對於選單欄中可用的所有三個連結,我們都將目標框架指定為 **main_page**,因此,每當您單擊選單欄中的任何連結時,可用的連結都將在 main_page 中開啟。
以下是 **menu.htm** 檔案的內容
<!DOCTYPE html> <html> <body bgcolor="#4a7d49"> <a href="https://www.google.com" target="main_page"> Google </a> <br /><br /> <a href="https://www.microsoft.com" target="main_page"> Microsoft </a> <br /><br /> <a href="https://news.bbc.co.uk" target="main_page"> BBC News </a> </body> </html>
以下是 **main.htm** 檔案的內容
<!DOCTYPE html> <html> <body bgcolor="#b5dcb3"> <h3> This is main page and content from any link will be displayed here. </h3> <p> So now click any link and see the result. </p> </body> </html>
frameset 標籤的屬性
以下列出的屬性被 frameset 標籤接受。
屬性 | 描述 |
---|---|
cols | 指定 frameset 中包含多少列以及每列的大小。您可以透過四種方式之一指定每列的寬度。
|
rows | 此屬性的工作方式與 cols 屬性相同,並採用相同的值,但它用於指定 frameset 中的行。例如,要建立兩個水平框架,請使用 *rows="10%, 90%"*。您可以像上面對列解釋的那樣指定每行的高度。 |
border | 此屬性以畫素為單位指定每個框架邊框的寬度。例如 border="5"。值為零表示沒有邊框。 |
frameborder | 此屬性指定是否應在框架之間顯示三維邊框。此屬性的值為 1(是)或 0(否)。例如 frameborder="0" 指定沒有邊框。 |
framespacing | 此屬性指定 frameset 中框架之間的空間量。這可以採用任何整數值。例如 framespacing="10" 表示每個框架之間應有 10 畫素的間距。 |
HTML <frame> 標籤屬性
以下列出的屬性被 frame 標籤接受。
屬性 | 描述 |
---|---|
src | 此屬性用於提供應在框架中載入的檔名。其值可以是任何 URL。例如,src="/html/top_frame.htm" 將載入 html 目錄中可用的 HTML 檔案。 |
name | 此屬性允許您為框架命名。它用於指示應將文件載入到哪個框架中。當您想要在一個框架中建立連結並將頁面載入到另一個框架中時,這尤其重要,在這種情況下,第二個框架需要一個名稱來標識自身作為連結的目標。 |
frameborder | 此屬性指定是否顯示該框架的邊框;如果給定,它將覆蓋 <frameset> 標籤上 frameborder 屬性中給定的值,並且這可以取值為 1(是)或 0(否)。 |
marginwidth | 此屬性允許您指定框架邊框和框架內容的左側和右側之間的空間寬度。該值以畫素為單位給出。例如 marginwidth="10"。 |
marginheight | 此屬性允許您指定框架邊框及其內容的頂部和底部之間的空間高度。該值以畫素為單位給出。例如 marginheight="10"。 |
noresize | 預設情況下,您可以透過單擊並拖動框架的邊框來調整任何框架的大小。noresize 屬性可防止使用者調整框架的大小。例如 noresize="noresize"。 |
scrolling | 此屬性控制出現在框架上的捲軸的外觀。這採用“yes”、“no”或“auto”值。例如 scrolling="no" 表示它不應具有捲軸。 |
longdesc | 此屬性允許您提供指向另一個頁面的連結,該頁面包含對框架內容的詳細描述。例如 longdesc="framedescription.htm" |
框架的缺點
使用框架有一些缺點,因此從不建議在網頁中使用框架。
- 一些較小的裝置通常無法處理框架,因為它們的螢幕不夠大,無法分割。
- 有時由於不同的螢幕解析度,您的頁面在不同的計算機上顯示方式會有所不同。
- 瀏覽器的 *後退按鈕* 可能無法按使用者希望的那樣工作。
- 仍然有一些瀏覽器不支援框架技術。
影片 - HTML 框架

