网络

教育改变生活

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 4531|回复: 0
打印 上一主题 下一主题

CSS基础-18 表格

[复制链接]

418

主题

419

帖子

1710

积分

版主

Rank: 7Rank: 7Rank: 7

积分
1710
跳转到指定楼层
楼主
发表于 2023-11-17 08:21:07 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
CSS 表格
使用 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
Google
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表格属性
  
属性
  
描述
简写属性。在一条声明中设置所有边框属性。
规定是否应折叠表格边框。
规定相邻单元格之间的边框的距离。
规定表格标题的位置。
规定是否在表格中的空白单元格上显示边框和背景。
设置用于表格的布局算法。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

WEB前端

QQ|手机版|小黑屋|金桨网|助学堂  咨询请联系站长。

GMT+8, 2024-12-22 23:13 , Processed in 0.037039 second(s), 22 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表