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>

效果图:

相关推荐
橙光成长2 小时前
PDF离线工具箱深度解析:4MB纯前端单文件,40+功能全本地运行,文件绝不上传
前端·pdf·1024程序员节
小poop8 小时前
CSS 基础与实战:从入门到精通网页美化
前端
Csvn10 小时前
运行时性能
前端
Never_every9910 小时前
位图转矢量工具哪个好?实测抠抠图AI位图转矢量工具
大数据·前端
paopaokaka_luck11 小时前
宠物门店经营管理系统(销售与库存联动、进货自动记账、 退换与退款关联、员工个人业绩、ECharts 经营分析、滞销识别与客户分层、宠物档案年龄计算)
前端·javascript·spring boot·mysql·echarts·mybatis·1024程序员节
空中湖11 小时前
用 React 写数据大屏:为什么我不建议用图表库
前端·react.js·前端框架
狮子座的男孩13 小时前
html+css基础:25、3D变换(3D空间与景深/透视点的位置/位移/旋转/缩放/多重变换/背部可见性)
css·经验分享·html·旋转·透视点·缩放/位移·3d变换/空间与景深
欣欣之王来了13 小时前
原始HTML插值:v-html指令的使用与安全风险
前端·学习·架构·项目·vue3教程
IT_陈寒13 小时前
Redis的LRU淘汰策略坑了我一整天
前端·人工智能·后端
计算机魔术师13 小时前
砍半价格、参数再涨,国产旗舰追到 Opus 鼻尖了
前端