HTML 標籤的 cols 屬性和 rows 屬性
作用和用法
<frameset> 標籤有一個必需的屬性:要麼是 rows,要麼是 cols,這取決於您的選擇,它們定義了文件視窗中框架或巢狀的框架集的行或列的大小及數目。
這兩個屬性都接受用引號括起來並用逗號分開的值列表,這些數值指定了框架的絕對(畫素點)或相對(百分比或其餘空間)寬度(對列而言),或者絕對或相對高度(對行而言)。這些屬性值的數目決定了瀏覽器將會在文件視窗中顯示多少行或列的框架。
與表格一樣,瀏覽器在顯示時會盡可能接近給定的框架集尺寸。但是,瀏覽器不會為了能夠容納下超出邊沿的框架集而擴充套件文件視窗的邊界,也不會在指定的 框架沒有填滿整個視窗時用空白區域來填滿視窗。相反,瀏覽器會根據一個框架在行和列中相對於其他框架的大小來分配空間,這樣就能夠填滿整個文件視窗了。 (注意到一個主框架文件中沒有滾動條了嗎?)
例子
例子 1
下面的程式碼將建立 3 行框架:
<frameset rows="150,300,150">
其中的每行都貫穿整個文件視窗。第一和最後一個框架被設為 150 畫素高,第二行設定成 300 畫素高。
實際上,除非瀏覽器視窗正好是 600 畫素高,否則瀏覽器將會自動按照比例延伸或壓縮第一和最後一個框架,使得這兩個框架都佔據 1/4 的視窗空間。中間行將會佔據剩下 1/2 的視窗空間。
例子 2
用視窗尺寸的百分比表示的框架行和列尺寸資料更加實際。
例如,下面這個示例與剛才那個示例的效果相同:
<frameset rows="25%,50%,25%">
當然,如果這些百分比加起來不是 100%,瀏覽器也會自動按照比例重新給出每行尺寸以消除差異。
例子 3
如果你像我們一樣,那麼將問題綜合起來就不是一件難事。可能有的框架設計人員正為同樣的困難而感到苦惱,這就解釋了為什麼他們要在 <frameset> 的 rows 和 cols 值上加上星號。它告訴瀏覽器要在將相鄰的框架放入框架集之後,給剩下的空間分配各自的行或列。
例如,當瀏覽器遇到下列框架標籤時:
<frameset cols="100, *">
上面的例子會生成一個寬為固定的 100 畫素的列,然後再生成另一個框架列,該列會佔據框架集中其餘所有的空間。
例子 4
您還可以對多個列或行屬性值使用星號。在這樣的情況下,相應的行或列將對可用空間進行等分,例如:
<frameset rows="*, 100, *">
這條語句在框架集的中間生成一個 100 畫素高的行,並在這行的上邊和下邊各生成一個相同尺寸的行。
例子 5
如果在星號前放置一個整數值,相應的行或列就會相對地獲得更多的可用空間。例如:
<frameset cols="10%, 3*, *, *">
它生成了 4 列:第一列佔據整個框架集寬度的 10%。然後瀏覽器把其他空間的 3/5 分配給第二個框架,第三個和第四個框架各分配其餘空間的 1/5。
從上面的例子可以發現,使用星號(尤其是用數值作為字首),可以很容易地在一個框架集中分割剩下的空間。
提示和註釋
提示:需要注意的是,瀏覽器允許使用者手動地為單個框架文件的行或列重新確定大小,並因此改變每個框架在框架顯示中各自佔據的相對比例,除非你顯式地告訴瀏覽器不要這樣做。為了防止這種情況,可以在 <frame> 標籤中使用 noresize 屬性。
轉載於:https://my.oschina.net/jackguo/blog/158430