HTML表格

2018-09-13  本文已影响0人  暴走的金坤酸奶味

1、table标签:声明一个表格

2、tr标签:定义表格中的一行(tr中可以编写一个或多个th或td)

3、td和th标签:定义一行中的一个单元格,td代表普通单元格,th表示表头单元格

caption表示表格的标题。
thead表示表格的头部。
tbody表示表格的主体。
tfoot表示表格的底部

table常用属性

1、border 定义表格的边框

2、cellpadding 定义单元格内内容与边框的距离

3、cellspacing 定义单元格与单元格之间的距离

4、align 设置单元格中内容的水平对齐方式,设置值有:left | center | right

5、valign 设置单元格中内容的垂直对齐方式 top | middle | bottom

6、colspan 设置单元格水平合并

7、rowspan 设置单元格垂直合并

之前学习的很多属性都可以用来设置表格的样式,比如color可以用 来设置文本的颜色。padding可以设置内容和表格边框的距离。
text-align:设置文本的水平对齐。
vertical-align:设置文本的垂直对齐。
可选值:top、baseline、middle、bottom
border-spacing:边框间距
border-collapse:合并边框
collapse:合并边框
separate:不合并边框


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>表格</title>
</head>
<body>
    <!-- 在HTML中,使用table标签来创建一个表格 -->
    <table border="1" width="40%" align="center">
        <!-- 在table标签中使用tr来表示表格中的一行,有几行就有几对tr -->
        <tr>
            <!-- 在tr中需要使用td来创建一个单元格,有几个单元格就有几个td -->
            <td>A1</td>
            <td>A2</td>
            <td>A3</td>
            <td>A4</td>
        </tr>
        <tr>
            <td>B1</td>
            <td>B2</td>
            <td>B3</td>
            <!-- rowspan用来设置纵向的合并单元格 -->
            <td rowspan="2">B4</td>
        </tr>
        <tr>
            <td>C1</td>
            <td>C2</td>
            <td>C3</td>
        </tr>
        <tr>
            <td>D1</td>
            <td>D2</td>
            <!-- colspan横向的合并单元格 -->
            <td colspan="2">D3</td>
        </tr>
    </table>
</body>
</html>


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>表格</title>
    <style type="text/css">
        table{
            /*设置表格的宽度*/
            width: 300px;
            /*居中*/
            margin: 0 auto;
            /*边框*/
            /*border:1px solid black;*/
            /*table和td边框之间默认有一个距离,通过border-spacing属性可以设置这个距离*/
            /*border-spacing: 10px;*/
            /*
            border-collapse可以用来设置表格的边框合并
            如果设置了边框合并,则border-spacing自动失效
            */
            border-collapse: collapse;
            /*设置背景样式*/
            /*background-color: #bfa;*/
        }
        /*设置边框*/
        th, td{
            border: 1px solid black;
        }
        /*设置隔行变色*/
        tbody > tr:nth-child(even){
            background-color: #bfa;
        }
        /*鼠标移入到tr以后,改变颜色*/
        tr:hover{
            background-color: yellow;
        }
    </style>
</head>
<body>
    <table>
        <tr>
            <!-- 
            可以使用th标签来表示表头中的内容,
            它的用法和td一样,不同的是它会有一些默认效果
             -->
            <th>学号</th>
            <th>姓名</th>
            <th>性别</th>
            <th>住址</th>
        </tr>
        <tr>
            <td>1</td>
            <td>孙悟空</td>
            <td>男</td>
            <td>花果山</td>
        </tr>
        <tr>
            <td>2</td>
            <td>猪八戒</td>
            <td>男</td>
            <td>高老庄</td>
        </tr>
        <tr>
            <td>3</td>
            <td>沙和尚</td>
            <td>男</td>
            <td>流沙河</td>
        </tr>
        <tr>
            <td>4</td>
            <td>唐僧</td>
            <td>男</td>
            <td>女儿国</td>
        </tr>
        
        
        
    </table>
</body>
</html>

长表格


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>长表格</title>
</head>
<body>
    <table>
        <!-- 
        有一些情况下表格是非常的长的,这时就需要将表格分为三个部分,表头,表格的主体,表格底部
        在HTML中为我们提供了三个标签:
            thead 表头
            tbody 表格主体
            tfoot 表格底部
            
        这三个标签的作用,就来区分表格的不同的部分,他们都是table的子标签,都需要直接写到table中,tr需要写在这些标签当中
            
        thead中的内容,永远会显示在表格的头部
        tfoot中的内容,永远都会显示表格的底部
        tbody中的内容,永远都会显示表格的中间
        
        如果表格中没有写tbody,浏览器会自动在表格中添加tbody
        并且将所有的tr都放到tbody中,所以注意tr并不是table的子元素,而是tbody的子元素
        通过table > tr 无法选中行 需要通过tbody > tr
        -->
        <thead>
            <tr>
                <th>日期</th>
                <th>收入</th>
                <th>支出</th>
                <th>合计</th>
            </tr>
        </thead>

        <tfoot>
            <tr>
                <td></td>
                <td></td>
                <td>合计</td>
                <td>100</td>
            </tr>
        </tfoot>

        <tbody>
            <tr>
                <td>2017.03.01</td>
                <td>500</td>
                <td>300</td>
                <td>2000</td>
            </tr>
            <tr>
                <td>2017.03.01</td>
                <td>500</td>
                <td>300</td>
                <td>2000</td>
            </tr>
            <tr>
                <td>2017.03.01</td>
                <td>500</td>
                <td>300</td>
                <td>2000</td>
            </tr>
            <tr>
                <td>2017.03.01</td>
                <td>500</td>
                <td>300</td>
                <td>2000</td>
            </tr>
            <tr>
                <td>2017.03.01</td>
                <td>500</td>
                <td>300</td>
                <td>2000</td>
            </tr>
            <tr>
                <td>2017.03.01</td>
                <td>500</td>
                <td>300</td>
                <td>2000</td>
            </tr>
        
        
            
        </tbody>
    </table>
</body>
</html>


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>表格的布局</title>
</head>
<body>
    <!-- 
    以前表格更多的情况实际上是用来对页面进行布局的,但是这种方式早已被CSS所淘汰了
    表格的列数由td最多的那行决定
    表格是可以嵌套,可以在td中在放置一个表格
    -->
    <table border="1" width="100%">
        <tr height="100px">
            <td colspan="2"></td>
        </tr>
        <tr height="400px">
            <td width="20%"></td>
            <td width="80%">
                <table border="1" width="100%" height="100%">
                    <tr>
                        <td></td>
                    </tr>
                    <tr>
                        <td></td>
                    </tr>
                </table>
            </td>
        </tr>
        <tr height="100px">
            <td colspan="2"></td>
        </tr>
    </table>
</body>
</html>
上一篇下一篇

猜你喜欢

热点阅读