如何使用 CSS 設定表格佈局演算法?
為了回答“如何使用 CSS 設定表格佈局演算法”這個問題,我們需要理解什麼是“佈局”。HTML 中的佈局指定了網站的基本組織結構和視覺樣式。它使您能夠使用基本的 HTML 標籤構建網站。
表格佈局
表格佈局由於其複雜性而成為最不建議使用的 HTML 佈局之一。顧名思義,它基於<table> 元素。<table> 元素允許您將資料排列成行和列。
<table> 標籤是一個容器標籤,因為它既是開始標籤也是結束標籤,我們可以在一個元素內使用多個 HTML 元素,即使需要三個元標籤才能將資料排列到表格中。
第一個使用 <tr> 標籤(代表“table row”,表格行)向表格新增新行,第二個使用 <th> 標籤(代表“table heading”,表格標題)儲存表格的標題。最後一個是“<td>”(table data,表格資料),它獲取必須儲存在表格中的資料。
示例
下面是一個在網頁中使用的表格標籤示例。
<!DOCTYPE html> <html> <head> <title>HTML Tables</title> </head> <body> <table border = "1"> <tr> <td>Name</td> <td>Age</td> </tr> <tr> <td>Vibha</td> <td>30</td> </tr> </table> </body> </html>
CSS 中的 table-layout 屬性是什麼?
表格佈局是 CSS 中的眾多屬性之一,用於向 HTML 文件中已存在的標籤新增自定義樣式。此屬性用於設定在佈局表格標籤元素(如表格標題、表格行和表格資料)時有幫助的演算法。
幾乎所有 Web 瀏覽器都支援它。它是非繼承屬性,具有離散動畫型別。使用的計算值由瀏覽器指定。此屬性可以具有的所有可能值的列表如下:
auto - 這是大多數瀏覽器使用的值,它使表格佈局自動進行。透過為 table-layout 屬性提供 auto 值,使表格的單元格和列可以擴充套件以容納所有內容。
fixed - 透過此值,我們透過設定第一行的寬度或在 table 和 col 元素上設定寬度來為表格和列提供固定寬度。第一行之後的單元格的寬度對錶格的寬度沒有影響。
在第一行表格被下載和檢查後,可以使用“fixed”佈局方法生成完整的表格。這可以加快渲染速度,但後續單元格內容可能無法容納在可用的列寬中。因此,我們必須選擇網站載入速度更快還是關注 UI 的展示部分。
只有當表格具有定義的寬度時,單元格才會使用 overflow 屬性來確定是否剪下任何溢位的內容;否則,它們不允許內容溢位單元格。
除了這些值之外,我們還可以為此屬性提供 initial 或 inherit 作為值。initial 使屬性設定為其預設值,而 inherit 使屬性繼承其父元素的值。
示例
下面是使用 CSS 中的 table-layout 屬性來設定底層表格佈局演算法的示例。我們使用了此屬性的上述兩種可能的值。
<!DOCTYPE html> <html> <head> <title>table-layout property in CSS</title> <style> table { border-collapse: collapse; border: 2px solid rgb(156, 112, 112); } th, td { border: 2px solid rgb(130, 99, 99); } table#tableAuto { table-layout: auto; width: 300px; } table#tableFixed { table-layout: fixed; width: 300px; } div { max-width: 300px; padding: 12px; border: 2px solid rgb(144, 102, 102); } h1 { color: rgb(111, 164, 111); } </style> </head> <body> <center> <h1>Examples of table layout property</h1> <h2>table-layout property in CSS</h2> <div> <h3>Property value set to auto</h3> <table id="tableAuto"> <tr> <th>Some Name</th> <th>Some Age</th> <th>Some Roll No</th> </tr> <tr> <td>Some Name 1</td> <td>Some Age 1</td> <td>Some Roll No 1</td> </tr> <tr> <td>Some Name 2</td> <td>Some Age 2</td> <td>Some Roll no 2</td> </tr> </table> </div> <br /> <div> <h3>The property value set to fixed</h3> <table id="tableFixed"> <tr> <th>Some Name</th> <th>Some Age</th> <th>Some Roll no</th> </tr> <tr> <td>Some Name 1</td> <td>Some Age 1</td> <td>Some Roll no 1</td> </tr> <tr> <td>Some Name 2</td> <td>Some Age 2</td> <td>Some Roll no 2</td> </tr> </table> </div> </center> </body> </html>
結論
總而言之,使用 CSS 設定表格佈局演算法是確保表格井井有條且專業的絕佳方法。只需幾個簡單的步驟,您就可以輕鬆建立美觀的表格佈局,且工作量最小。此外,透過利用 flexbox 和 grid 系統等現代 CSS 功能,您可以輕鬆快速地為任何裝置或螢幕尺寸生成響應式設計。最終,使用 CSS 設定表格佈局演算法是輕鬆建立精美網頁的強大工具。