CSS 表格
- 上一頁 CSS 列表
- 下一頁 CSS Display
使用 CSS 可以極大地改善 HTML 表格的外觀:
Company | Contact | Address | City |
---|---|---|---|
Alibaba | Ma Yun | No. 699, Wangshang Road, Binjiang District | Hangzhou |
APPLE | Tim Cook | 1 Infinite Loop Cupertino, CA 95014 | Cupertino |
BAIDU | Li YanHong | Lixiang guoji dasha,No 58, beisihuanxilu | Beijing |
Canon | Tsuneji Uchida | One Canon Plaza Lake Success, NY 11042 | New York |
Larry Page | 1600 Amphitheatre Parkway Mountain View, CA 94043 | Mountain View | |
HUAWEI | Ren Zhengfei | Putian Huawei Base, Longgang District | Shenzhen |
Microsoft | Bill Gates | 15700 NE 39th St Redmond, WA 98052 | Redmond |
Nokia | Olli-Pekka Kallasvuo | P.O. Box 226, FIN-00045 Nokia Group | Helsinki |
SONY | Kazuo Hirai | Park Ridge, NJ 07656 | Park Ridge |
Tencent | Ma Huateng | Tencent Building, High-tech Park, Nanshan District | Shenzhen |
表格邊框
如需在 CSS 中設置表格邊框,請使用 border
屬性。
下例為 <table>、<th> 和 <td> 元素規定了黑色邊框:
Firstname | Lastname |
---|---|
Bill | Gates |
Steve | Jobs |
實例
table, th, td { border: 1px solid black; }
注意:上例中的表格擁有雙邊框。這是因為 table 和 <th> 和 <td> 元素都有單獨的邊框。
全寬表格
在某些情況下,上表似乎很小。如果您需要一個可以覆蓋整個屏幕(全寬)的表格,請為 <table> 元素添加 width: 100%:
實例
table { width: 100%; }
雙邊框
請注意上面的表格有雙邊框。這是因為表格和 th、td 元素都有單獨的邊框。
如需刪除雙邊框,請看下面的例子。
合并表格邊框
border-collapse
屬性設置是否將表格邊框折疊為單一邊框:
Firstname | Lastname |
---|---|
Bill | Gates |
Steve | Jobs |
實例
table { border-collapse: collapse; } table, th, td { border: 1px solid black; }
如果只希望表格周圍有邊框,則僅需為 <table> 指定 border
屬性:
Firstname | Lastname |
---|---|
Bill | Gates |
Steve | Jobs |
實例
table { border: 1px solid black; }
表格寬度和高度
表格的寬度和高度由 width
和 height
屬性定義。
下例將表的寬度設置為 100%,將 <th> 元素的高度設置為 50px:
Firstname | Lastname | Savings |
---|---|---|
Bill | Gates | $100 |
Steve | Jobs | $150 |
Elon | Musk | $300 |
實例
table { width: 100%; } th { height: 50px; }
要創建僅占頁面一半的表,請使用 width: 50%:
實例
table { width: 50%; } th { height: 70px; }
水平對齊
text-align
屬性設置 <th> 或 <td> 中內容的水平對齊方式(左、右或居中)。
默認情況下,<th> 元素的內容居中對齊,而 <td> 元素的內容左對齊。
要使 <td> 元素的內容也居中對齊,請使用 text-align: center:
Firstname | Lastname | Savings |
---|---|---|
Bill | Gates | $100 |
Steve | Jobs | $150 |
Elon | Musk | $300 |
實例
th { text-align: center; }
下例使 <th> 元素中的文本左對齊:
Firstname | Lastname | Savings |
---|---|---|
Bill | Gates | $100 |
Steve | Jobs | $150 |
Elon | Musk | $300 |
實例
th { text-align: left; }
垂直對齊
vertical-align
屬性設置 <th> 或 <td> 中內容的垂直對齊方式(上、下或居中)。
默認情況下,表中內容的垂直對齊是居中(<th> 和 <td> 元素都是)。
下例將 <td> 元素的垂直文本對齊方式設置為下對齊:
Firstname | Lastname | Savings |
---|---|---|
Bill | Gates | $100 |
Steve | Jobs | $150 |
Elon | Musk | $300 |
實例
td { height: 50px; vertical-align: bottom; }
表格內邊距
如需控制邊框和表格內容之間的間距,請在 <td> 和 <th> 元素上使用 padding
屬性:
Firstname | Lastname | Savings |
---|---|---|
Bill | Gates | $100 |
Steve | Jobs | $150 |
Elon | Musk | $300 |
實例
th, td { padding: 15px; text-align: left; }
水平分隔線
Firstname | Lastname | Savings |
---|---|---|
Bill | Gates | $100 |
Steve | Jobs | $150 |
Elon | Musk | $300 |
向 <th> 和 <td> 添加 border-bottom
屬性,以實現水平分隔線:
實例
th, td { border-bottom: 1px solid #ddd; }
可懸停表格
在 <tr> 元素上使用 :hover
選擇器,以突出顯示鼠標懸停時的表格行:
Firstname | Lastname | Savings |
---|---|---|
Bill | Gates | $100 |
Steve | Jobs | $150 |
Elon | Musk | $300 |
實例
tr:hover {background-color: #f5f5f5;}
條狀表格
Firstname | Lastname | Savings |
---|---|---|
Bill | Gates | $100 |
Steve | Jobs | $150 |
Elon | Musk | $300 |
為了實現斑馬紋表格效果,請使用 nth-child()
選擇器,并為所有偶數(或奇數)表行添加 background-color
:
實例
tr:nth-child(even) {background-color: #f2f2f2;}
表格顏色
下例指定了 <th> 元素的背景顏色和文本顏色:
Firstname | Lastname | Savings |
---|---|---|
Bill | Gates | $100 |
Steve | Jobs | $150 |
Elon | Musk | $300 |
實例
th { background-color: #4CAF50; color: white; }
響應式表格
如果屏幕太小而無法顯示全部內容,則響應式表格會顯示水平滾動條:
First Name | Last Name | Points | Points | Points | Points | Points | Points | Points | Points | Points | Points |
---|---|---|---|---|---|---|---|---|---|---|---|
Bill | Gates | 50 | 50 | 50 | 50 | 50 | 50 | 50 | 50 | 50 | 50 |
Steve | Jobs | 94 | 94 | 94 | 94 | 94 | 94 | 94 | 94 | 94 | 94 |
Elon | Musk | 67 | 67 | 67 | 67 | 67 | 67 | 67 | 67 | 67 | 67 |
在 <table> 元素周圍添加帶有 overflow-x:auto
的容器元素(例如 <div>),以實現響應式效果:
實例
<div style="overflow-x:auto;"> <table> ... table content ... </table> </div>
注釋:在 OS X Lion(在 Mac 上)中,滾動條默認情況下是隱藏的,并且僅在使用時顯示(即使設置了 "overflow:scroll")。
CSS 表格屬性
屬性 | 描述 |
---|---|
border | 簡寫屬性。在一條聲明中設置所有邊框屬性。 |
border-collapse | 規定是否應折疊表格邊框。 |
border-spacing | 規定相鄰單元格之間的邊框的距離。 |
caption-side | 規定表格標題的位置。 |
empty-cells | 規定是否在表格中的空白單元格上顯示邊框和背景。 |
table-layout | 設置用于表格的布局算法。 |
- 上一頁 CSS 列表
- 下一頁 CSS Display