HTML之表格学习记录

在HTML中,一个表格一般会由以下三个部分组成。

表格:table标签

行:tr

标签单元格:td

标签语法

复制代码
<table>
    <tr>
        <td>单元格 1</td>
        <td>单元格 2</td>
    </tr>
    <tr>
        <td>单元格 3</td>
        <td>单元格 4</td>
    </tr>
</table>

tr,指的是table row(表格行)​。

td,指的是table data cell(表格单元格)​。

<table>和</table>表示整个表格的开始和结束,<tr>和 </tr>表示行的开始和结束,而<td>和</td>表示单元格的开始和结束。

练习题:

利用这一章学到的知识,制作如图所示的表格效果,并且要求代码语义化。

代码:

html 复制代码
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>表格练习</title>
    <style type="text/css">
        table,tr,td{border:1px solid silver;} 
    </style>
</head>
<body>
<table>
    <caption style="text-align:center;">学生成绩表</caption>
    <thead>
        <tr>
            <th>姓名</th>
            <th>性别</th>
            <th>成绩</th>
        </tr>
    </thead>
   <tbody>
    <tr>
        <td>张三</td>
        <td>男</td>
        <td>250</td>
    </tr>
    <tr>
        <td>李四</td>
        <td>男</td>
        <td>250</td>
    </tr>
   </tbody>
   <tfoot>
    <tr>
        <td>平均分</td>
        <td colspan="2">385</td>
    </tr>
   </tfoot>
    
</table>
   
</body>
</html>

效果图:

练习过程代码:

html 复制代码
<!DOCTYPE html>
<html>
    <head>
        <title>表格</title>
        <meta charset="utf-8"/>
        <!-- 这里使用CSS为表格加上边框 -->
        <style type="text/css">
            table,tr,td{border:1px solid silver;} 

        </style>

       
    </head>
    <bady>
        <!-- 在过去的Web 1.0时代,表格常用于网页布局。
         但是在Web2.0中,这种方式已经被抛弃了,网页布局都是使用CSS来实现的(学了CSS就会知道) -->
         
         <!-- 一个表格只能有一个标题,也就是只能有一个caption标签。
          在默认情况下,标题都是位于整个表格内的第一行。 -->
          
         <!-- tr,指的是table row(表格行)​。td,指的是table data cell(表格单元格)​。 -->
         <table>
            <caption>表格标题</caption>
            <tr>
                <td>单元格 1</td>
                <td>单元格 2</td>
            </tr>
            <tr>
                <td>单元格 3</td>
                <td>单元格 4</td>
            </tr>
        </table>
        
         <table>
            <caption>技术学习</caption>
            <tr>
                <td>HTML</td>
                <td>CSS</td>
            </tr>
            <tr>
                <td>JavaScript</td>
                <td>jQuery</td>
            </tr>
         </table>
         <!-- 在HTML中,单元格其实有两种:表头单元格,使用th标签;表行单元格,使用td标签。 -->
         <!-- th,指的是table header cell(表头单元格)​。td,指的是table data cell(表行单元格)​。 -->
         <table>
            <caption>表格标题</caption>
            <tr>
                <th>表头单元格 1</th>
                <th>表头单元格 2</th>
            </tr>
            <tr>
                <td>表行单元格 1</td>
                <td>表行单元格 2</td>
            </tr>
            <tr>
                <td>表行单元格 3</td>
                <td>表行单元格 4</td>
            </tr>
        </table>
        
         <table>
            <caption>考试成绩表</caption>
            <tr>
                <th>姓名</th>
                <th>数学</th>
                <th>语文</th>
            </tr>
            <tr>
                <td>张三</td>
                <td>90</td>
                <td>80</td>
            </tr>
            <tr>
                <td>李四</td>
                <td>70</td>
                <td>60</td>
            </tr>
            </tr>
         </table>
         <!-- 一个完整的表格包含:table、caption、tr、th、td。为了更深入地对表格进行语义化,
          HTML引入了thead、tbody和thead、tbody和tfoot把表格划分为三部分:表头、表身、表脚。
          有了这三个标签,表格语义更加良好,结构更清晰,也更具有可读性和可维护性 -->
          <table>
            <caption>考试成绩表</caption>
            <thead>
                <tr>
                    <th>姓名</th>
                    <th>数学</th>
                    <th>语文</th>
                </tr>
            </thead>
            <tbody>
                <tr>
                    <td>张三</td>
                    <td>90</td>
                    <td>80</td>
                </tr>
                <tr>
                    <td>李四</td>
                    <td>70</td>
                    <td>60</td>
                </tr>
            </tbody>
            
            <tfoot>
                <tr>
                    <td>平均分</td>
                    <td>75</td>
                    <td>65</td>
                </tr>
            </tfoot>
          </table>
          <!-- 表脚(tfoot)往往用于统计数据。对于thead、tbody和tfoot这三个标签,不一定全部都用上,
           例如tfoot就很少用。一般情况下,我们都是根据实际需要来使用这三个标签。 -->
           <!-- thead、tbody和tfoot除了使得代码更具有语义之外,还有另外一个重要作用:方便分块来控制表格的CSS样式。 -->
            
           
           <!-- 有时我们需要将"横向的N个单元格"或者"纵向的N个单元格"合并成一个单元格(类似Word中的表格合并)​,这个时候就需要用到"合并行"或"合并列"​。 -->
            <!-- 合并行 -->
           
             <br/>
             <table>
                <tr>
                    <td>姓名:</td>
                    <td>小明</td>
                </tr>
                <tr>
                    <td>喜欢的水果:</td>
                    <td>苹果</td>
                </tr>
                <tr>
                    <td>香蕉</td>
                </tr>
             </table>
             
              <!-- rowspan="2"实际上是让加上rowspan属性的这个td标签跨越两行。 -->
               <br/>
             <table>
                <tr>
                    <td>姓名:</td>
                    <td>小明</td>
                </tr>
                <tr>
                    <td  rowspan="2">喜欢的水果:</td>
                    <td>苹果</td>
                </tr>
                <tr>
                    <td>香蕉</td>
                </tr>
             </table>
                <br/>
             <!-- 在HTML中,我们可以使用colspan属性来合并列。所谓的合并列,指的是将"横向的N个单元格"合并 -->
              <table>
                <tr>
                    <td>前端开发技术</td>
                </tr>
                <tr>
                    <td>HTML</td>
                    <td>CSS</td>
                </tr>
                <tr>
                    <td>JavaScript</td>
                    <td>jQuery</td>
                </tr>
              </table>
              <br/>
              <table>
                <tr>
                    <td colspan="2">前端开发技术</td>
                </tr>
                <tr>
                    <td>HTML</td>
                    <td>CSS</td>
                </tr>
                <tr>
                    <td>JavaScript</td>
                    <td>jQuery</td>
                </tr>
              </table>
        </bady>
</html>

效果图:

相关推荐
iphone1084 分钟前
一次编码,多端运行:HTML5多终端调用
前端·javascript·html·html5
老坛00121 分钟前
2025决策延迟的椭圆算子分析:锐减协同工具的谱间隙优化
前端
老坛00122 分钟前
从记录到预测:2025新一代预算工具如何通过AI实现前瞻性资金管理
前端
今禾25 分钟前
" 当Base64遇上Blob,图像转换不再神秘,让你的网页瞬间变身魔法画布! "
前端·数据可视化
华科云商xiao徐30 分钟前
高性能小型爬虫语言与代码示例
前端·爬虫
十盒半价30 分钟前
深入理解 React useEffect:从基础到实战的全攻略
前端·react.js·trae
攀登的牵牛花31 分钟前
Electron+Vue+Python全栈项目打包实战指南
前端·electron·全栈
iccb101332 分钟前
我是如何实现在线客服系统的极致稳定性与安全性的
前端·javascript·后端
一大树32 分钟前
Vue3祖孙组件通信方法总结
前端·vue.js
不要进入那温驯的良夜33 分钟前
跨平台UI自动化-Appium
前端