HTML 框架/分割視窗 - <frameset> <frame> 標籤 (tag)

<frameset> 標籤是用來包含 <frame> 標籤的 HTML 元素,<frameset> 和 <frame> 是用做框架用途,可以將一個螢幕畫面分割成好幾個區塊,每個區塊可以各自載入不同的 HTML 網頁,有如分割視窗的效果。

⚠️ 這是已廢棄的技術

<frameset><frame> 標籤在 HTML5 中已被正式廢棄 (Deprecated)。由於這項技術會導致網頁效能下降、搜尋引擎優化 (SEO) 困難以及嚴重的無障礙 (Accessibility) 問題,現代網頁開發已不再使用。

現代替代方案:

  • 側邊欄佈局:請使用 CSS FlexboxCSS Grid 來建立響應式多欄佈局。
  • 嵌入外部內容:請改用 <iframe> 標籤。
  • 局部內容更新:請使用 AJAX (Fetch API) 或前端框架 (如 React, Vue) 來動態抓取內容。

<frameset> 標籤上可以用的屬性:

  • cols: 指定框架直行 (columns) 的數目和尺寸
  • rows: 指定框架橫列 (rows) 的數目和尺寸

<frame> 標籤上可以用的屬性:

  • src: 要顯示的 HTML 網頁位址 (URL)
  • name: 指定一個名稱,讓不同 frame 裡面的連結可以指定開啟在別的 frame 中
  • noresize: 設定使用者不能拖拉改變 frame 的尺寸大小
  • scrolling: 要不要出現頁面的滾動條,yes 表示顯示,就算是多餘的;no 表示不顯示,就算內容太長
  • marginheight: 指定 frame 和 frame 之間的邊距多高
  • marginwidth: 指定 frame 和 frame 之間的邊距多寬
  • frameborder: 指定 frame 有邊框

舉個語法使用例子:

<frameset cols="25%,*,25%">
  <frame src="frame_a.html">
  <frame src="frame_b.html">
  <frame src="frame_c.html">
</frameset>