百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

零基础教你学前端——24、表格标题和结构分组

zhezhongyun 2025-01-27 01:13 60 浏览

这节课,我们学习表格的标题,行分组和列分组等有用的标签。

表格标题,顾名思义,就是一个表格的大标题,默认情况下位于表格顶部水平居中位置。

标签名为 caption 译为 说明文字。它是一个双标签,语法为:<caption></caption>) 。标签里面放置标题的文本,它是 table 标签的子标签,一般习惯放置在第一个 tr 标签之前。

该案例中的,表格标题 “阿里职级薪资”,就是使用 caption 标签实现的。

按照惯例,表格的所有行均需要使用 tr 标签实现。我们仔细观察表格的这些行——第一行和第二行可以看做是表格的头部区域,中间5行可以看做是表格的主体区域,最后一行可以看做表格的脚部区域,那能不能使用一些标签来把这些 tr 行分成三组呢?是可以的!这就需要三个行分组标签 thead、tbody、tfoot,分别表示表格头、表格体和表格尾

行分组标签均为双标签,thead 标签是 table head 简写,译为表格头。基本语法为:<thead></thead> thead 是 table 标签的子标签,标签里面放置对应的表格头部 tr 行内容。

例如,当前表格案例中的前两行内容,就是使用 thead 标签实现的。

tbody 标签是 table body 的简写,译为表格体,基本语法为,<tbody></tbody> tbody 标签也是 table 标签的子标签,与 thead 标签同级,标签里面放置对应的表格主体部分 tr 行内容。

例如,当前案例中具体的岗位职级信息,就是使用 tbody 标签实现的。

tfoot 标签是 table foot 的简写,译为表格脚。基本语法为:<tfoot></tfoot> 同样是 table 标签的子标签,与 thead tbody 同级,标签里面放置对应的表格脚部 tr 行内容。

案例中的最后一行 说明,就是使用 tfoot 标签实现的。

了解了表格的标题标签和分组标签的语义和语法后,我们就来完成这个案例。

这是一个由 8 行 7 列组成的表格,表格在页面中居中显示。

打开编辑器,创建一个 group_table.html 页面,补全基本代码。在 body 里编写 Emmet语句:(table>tr8>td7{内容} ) 把表格撑开便于观察。生成表格基本代码,给 table 定义width属性,宽度为600;定义 border属性,边框宽度为 1 ;最后定义align属性,值为center,居中对齐。保存文件。

用浏览器打开页面,基础的表格做好了!

案例中序号占据了两行位置,需要垂直合并单元格,技术岗与管理岗的职级薪资和说明占据了第2列到第7列的位置,需要水平合并单元格。

回到编辑器,找到第一行第一个单元格 td,给它定义 rowspan 属性,值设置为2。因为做了行的合并,需要删除第二行的第一个单元格。

再找到第一行第二个单元格 td,为其定义 colspan 属性,值设置为6。同时也把该行中的被合并的单元格删除。

再找到最后一行,给第二个td 添加 colspan 属性,值设置为 6。同时也把该行中的被合并的单元格删除。保存。

回到浏览器,刷新,三个单元格合并成功。

接下来为表格添加标题和实现行的分组。

回到编辑器,此时代码里并没有添加行分组标签。

回到浏览器,右键,检查,点击元素监测按钮,再选中表格,在 Elements 元素查看窗口里,看到了 table 标签,点击左侧的三角,展开 table,神奇的一幕发生了:在没有使用任何分组标签的前提下,表格的结构多出了一层 tbody 标签。

在这里需要提醒大家:表格如果没有使用任何分组标签,浏览器在渲染时,会把 table 中,所有未分组的 tr 放在一个 tbody 标签里面。因此,为了使表格行,内容语义化更强,我们手动为表格添加一些分组标签。

回到编辑器,在 table 内部,第一个 tr 之前,回车,添加 caption 标签,把标题内容放在 caption标签内部。保存。

回到浏览器,刷新,表格的标题做好了。

回到编辑器,在 table 内部,第一个 tr 之前,回车,添加 caption 标签,把标题内容放在 caption标签内部。保存。

回到浏览器,刷新,表格的标题做好了。

回到编辑器,在 table 内部,第一个 tr 之前,回车,添加 caption 标签,把标题内容放在 caption标签内部。保存。

回到浏览器,刷新,表格的标题做好了。

继续为表格添加行分组标签。

回到编辑器,在 caption 标签的结束位置,添加 thead、tbody、tfoot三组标签。把前面的两行移动到 thead 标签内部,为了使文字加粗居中显示,需要将 thead 中的全部 td 换成 th。 可以按住alt+鼠标左键操作光标。

最后一行放置到 tfoot 标签内部,将第一行第一个 td 换成 th。

剩余的行移动到 tbody 标签中。

注意一点,W3C的标准约定,表格的行分组标签,一个表格只允许使用一个 thead 和一个tfoot,但是允许使用多个 tbody。

如果此时文档缩进和对齐有些错乱,可以在编辑器中点击鼠标右键 ,选择格式化文档,保存。

回到浏览器,页面效果没有任何变化,我们再次查看浏览器渲染完成的元素结构,能清楚的看到表格已经进行了分组。

回到编辑器,我们把单元格中对应的文本都填写好,这里有个小技巧:首先选中内容,然后按ctrl+d 就可以实现多光标操作。

为了使表格主体部分的文本在单元格里居中显示,我们需要给 tbody 里的每一个 tr 定义 align 属性值为 center align="center" 。保存。

回到浏览器,刷新,表格的效果基本上都呈现了!

其实,表格除了行可以分组外,列也可以分组。

列分组标签是 colgroup,是 column group 的缩写。该标签作用是把一列或者连续的几列分成一组,进行不同属性的修饰。列分组经常用于定义表格一整列单元格的颜色。

他的基本语法是: <colgroup></colgroup> 该标签可以定义一个 span 属性,取值为一个数值,含义为多少列分成一组。 (<colgroup span=""></colgroup>) 如果需要划分多组,则需要使用多个 colgroup 标签。

回到编辑器,在 caption 标签的结束位置,回车,添加 colgroup 标签。给它定义一个 span属性,取值设置为1 ;再为该标签添加一个 bgcolor 属性,值设置为 #91C5D4 (这里原样读出) 。这里的颜色值的定义我们下一节学习。保存。

继续为表格添加其他的背景颜色。

返回编辑器,再给 table 标签添加 bgcolor属性,定义整个table的背景颜色。保存。

回到浏览器,刷新。除了第一列,表格其他列的背景颜色变成了淡蓝色。

案例中,边框线颜色为白色。

回到编辑器,给 table 再定义 cellpadding 等于0, (cellpadding="0") 定义 cellspacing 等于 0, (cellspacing="0") 最后定义 bordercolor 属性,值设置成白色。

再给第一行 tr 定义 bgcolor 属 性,设置好颜色值。给第二行 tr 定义 bgcolor属性,设置好颜色值。再给最后一整行定义背景色,给最后一行的第一个单元格定义背景色。保存。

回到浏览器,刷新,案例的所有效果全部实现了!

文章配套视频链接:https://www.bilibili.com/video/BV1oU4y1278g?p=25

相关推荐

Python入门学习记录之一:变量_python怎么用变量

写这个,主要是对自己学习python知识的一个总结,也是加深自己的印象。变量(英文:variable),也叫标识符。在python中,变量的命名规则有以下三点:>变量名只能包含字母、数字和下划线...

python变量命名规则——来自小白的总结

python是一个动态编译类编程语言,所以程序在运行前不需要如C语言的先行编译动作,因此也只有在程序运行过程中才能发现程序的问题。基于此,python的变量就有一定的命名规范。python作为当前热门...

Python入门学习教程:第 2 章 变量与数据类型

2.1什么是变量?在编程中,变量就像一个存放数据的容器,它可以存储各种信息,并且这些信息可以被读取和修改。想象一下,变量就如同我们生活中的盒子,你可以把东西放进去,也可以随时拿出来看看,甚至可以换成...

绘制学术论文中的“三线表”具体指导

在科研过程中,大家用到最多的可能就是“三线表”。“三线表”,一般主要由三条横线构成,当然在变量名栏里也可以拆分单元格,出现更多的线。更重要的是,“三线表”也是一种数据记录规范,以“三线表”形式记录的数...

Python基础语法知识--变量和数据类型

学习Python中的变量和数据类型至关重要,因为它们构成了Python编程的基石。以下是帮助您了解Python中的变量和数据类型的分步指南:1.变量:变量在Python中用于存储数据值。它们充...

一文搞懂 Python 中的所有标点符号

反引号`无任何作用。传说Python3中它被移除是因为和单引号字符'太相似。波浪号~(按位取反符号)~被称为取反或补码运算符。它放在我们想要取反的对象前面。如果放在一个整数n...

Python变量类型和运算符_python中变量的含义

别再被小名词坑哭了:Python新手常犯的那些隐蔽错误,我用同事的真实bug拆给你看我记得有一次和同事张姐一起追查一个看似随机崩溃的脚本,最后发现罪魁祸首竟然是她把变量命名成了list。说实话...

从零开始:深入剖析 Spring Boot3 中配置文件的加载顺序

在当今的互联网软件开发领域,SpringBoot无疑是最为热门和广泛应用的框架之一。它以其强大的功能、便捷的开发体验,极大地提升了开发效率,成为众多开发者构建Web应用程序的首选。而在Spr...

Python中下划线 ‘_’ 的用法,你知道几种

Python中下划线()是一个有特殊含义和用途的符号,它可以用来表示以下几种情况:1在解释器中,下划线(_)表示上一个表达式的值,可以用来进行快速计算或测试。例如:>>>2+...

解锁Shell编程:变量_shell $变量

引言:开启Shell编程大门Shell作为用户与Linux内核之间的桥梁,为我们提供了强大的命令行交互方式。它不仅能执行简单的文件操作、进程管理,还能通过编写脚本实现复杂的自动化任务。无论是...

一文学会Python的变量命名规则!_python的变量命名有哪些要求

目录1.变量的命名原则3.内置函数尽量不要做变量4.删除变量和垃圾回收机制5.结语1.变量的命名原则①由英文字母、_(下划线)、或中文开头②变量名称只能由英文字母、数字、下画线或中文字所组成。③英文字...

更可靠的Rust-语法篇-区分语句/表达式,略览if/loop/while/for

src/main.rs://函数定义fnadd(a:i32,b:i32)->i32{a+b//末尾表达式}fnmain(){leta:i3...

C++第五课:变量的命名规则_c++中变量的命名规则

变量的命名不是想怎么起就怎么起的,而是有一套固定的规则的。具体规则:1.名字要合法:变量名必须是由字母、数字或下划线组成。例如:a,a1,a_1。2.开头不能是数字。例如:可以a1,但不能起1a。3....

Rust编程-核心篇-不安全编程_rust安全性

Unsafe的必要性Rust的所有权系统和类型系统为我们提供了强大的安全保障,但在某些情况下,我们需要突破这些限制来:与C代码交互实现底层系统编程优化性能关键代码实现某些编译器无法验证的安全操作Rus...

探秘 Python 内存管理:背后的神奇机制

在编程的世界里,内存管理就如同幕后的精密操控者,确保程序的高效运行。Python作为一种广泛使用的编程语言,其内存管理机制既巧妙又复杂,为开发者们提供了便利的同时,也展现了强大的底层控制能力。一、P...