花潮论坛

搜索
热搜: 活动 交友 discuz
查看: 23|回复: 6

colgroup :表格列组元素

[复制链接]
  • TA的每日心情
    奋斗
    2026-4-16 13:27
  • 签到天数: 1791 天

    [LV.Master]伴坛终老

    3188

    主题

    13万

    回帖

    28万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9Rank: 9Rank: 9Rank: 9Rank: 9Rank: 9Rank: 9

    花潮帅哥鼠牛虎兔龙蛇马羊猴鸡狗猪多彩人生星月交辉奔放热烈海样胸怀春风拂面火热情怀优雅迷人神秘浪漫相遇之美鹰傲苍穹花好月圆紫色情节飞龙在天王者至尊大将风范音画大师天籁妙音共看流星风雨同行我心永远幸福快乐喜乐安康侠骨柔肠心想事成开朗大方花潮管理

    发表于 2026-4-16 13:42 | 显示全部楼层 |阅读模式

    请马上登录,朋友们都在花潮里等着你哦:)

    您需要 登录 才可以下载或查看,没有账号?立即注册

    x

    表格列组元素 <colgroup> 用于定义 <table> 表格的一组列,即设置一个或多个列为一组以便通过 CSS 设定该组所有列的样式。换言之, colgroup 是 HTML 表格中的一个元素,用于对表格的列进行分组和样式化,其主要功能是为一组列设置统一的样式或属性,从而简化表格的样式管理。

    一、colgroup语法结构:

    <colgroup> <col class="col-idx"> <!-- 第一列 --> <col span="2" class="col-main"> <!-- 第二、三列 --> <col class="col-comment"> <!-- 第四列 --> </colgroup> <!-- 对应 CSS 代码 --> .col-idx { background: silver; } .col-main { background: tan; } .col-comment { background: pink; }

    【注】子元素 <col> 为自闭合标签,它可以拥有一个 span 属性,用于设定“合并”列,缺省此属性时其值为 1,即 col 是个单列,当 span 值为 n,表示该 col 标签将 n 个表格自然列“合并”在一起进行定义。这里的“合并”不是真的合并单元格,而是归拢 n 个自然列为一个子组。

    下面给出一个可以预览的应用实例:

    <style> table { width: 800px; border-collapse: collapse; margin: 30px; } caption { font-size: 2em; font-weight: bold; padding-bottom: 10px; } th { background: #3498db; color: white; padding: 12px; text-align: left; font-weight: bold; text-align: center; } td { padding: 8px 12px; border-bottom: 1px solid #eee; border: 1px solid gray; } .col-idx { background: aliceblue; } .col-main { background: beige; } .col-comment { background: silver; } </style> <table> <caption>学生名册</caption> <!-- colgroup标签放在 caption 标签之后 --> <colgroup> <col class="col-idx"> <col span="2" class="col-main"> <!-- span 属性“合并”自然列 --> <col class="col-comment"> </colgroup> <!-- colgroup标签放在 thead 标签之前 --> <thead> <tr> <th width="8%">序号</th> <th width="20%">姓名</th> <th width="8%">年龄</th> <th>备注</th> </tr> </thead> <tbody> <tr> <td>1</td> <td>玛利亚</td> <td>17</td> <td>父母离异,随母亲生活</td> </tr> <tr> <td>2</td> <td>阿古丽</td> <td>15</td> <td>父亲为联合国维和部队上尉</td> </tr> <tr> <td>3</td> <td>朱亚军</td> <td>18</td> <td></td> </tr> </tbody> </table>

    二、使用 <colgroup> 标签注意事项

    • <colgroup> 标签应出现在 <table> 标签之内

    • <colgroup> 标签在 table 代码流中非常讲究,必须放在任何 <caption> 元素(如果使用)之后、并在任何 <thead><tbody><tfoot><tr> 元素之前

    • 只有数量有限的 CSS 属性会影响 <colgroup>

      1. background
      2. border
      3. visibility
      4. width

    三、为 table 设置多个 colgroup 标签

    <colgroup> 标签自身和其子标签 <col> 一样也可以拥有自己的 span 属性,这意味着我们可以通过多个无需子元素的 <colgroup> 标签来设置不同子组列的样式。下面可以在线预览的实例是一个七列的表格,分为 5 个子组:

    <style> table { width: 800px; border-collapse: collapse; margin: 30px; } caption { font-size: 2em; font-weight: bold; padding-bottom: 10px; } th { background: #3498db; color: white; padding: 12px; text-align: left; font-weight: bold; text-align: center; } td { padding: 8px 12px; border-bottom: 1px solid #eee; border: 1px solid gray; } .index { background: aliceblue; } .main1 { background: beige; } .main2 { background: gold; } .main3 { background: tan; } .comment { background: silver; } </style> <table> <caption>学生名册</caption> <!-- colgroup标签放在 caption 标签之后 --> <colgroup class="index"></colgroup> <colgroup span="3" class="main1"></colgroup> <!-- span 属性“合并”自然列 --> <colgroup class="main2"></colgroup> <colgroup class="main3"></colgroup> <colgroup class="comment"></colgroup> <!-- colgroup标签放在 thead 标签之前 --> <thead> <tr> <th width="8%">序号</th> <th width="10%">姓名</th> <th width="8%">性别</th> <th width="8%">年龄</th> <th width="8%">表现</th> <th width="28%">家庭住址</th> <th>备注</th> </tr> </thead> <tbody> <tr> <td>1</td> <td>玛利亚</td> <td>女</td> <td>17</td> <td>优</td> <td>雅虎镇单亲公寓006号</td> <td>父母离异,随母亲生活</td> </tr> <tr> <td>2</td> <td>阿古丽</td> <td>女</td> <td>15</td> <td>优+</td> <td>西单公寓109号</td> <td>父亲为联合国维和部队上尉</td> </tr> <tr> <td>3</td> <td>朱亚军</td> <td>男</td> <td>18</td> <td>优++</td> <td>东大丰县县城北区西江公寓238号</td> <td></td> </tr> </tbody> </table>

    总而言之,表格用来展现数据在 HTML 中占据一定优势,而表格中的列分组标签 colgroup 可以灵活设置不同子组列的样式和属性,用好它可以令数据的渲染更为精彩、美观。

    评分

    参与人数 2威望 +60 金钱 +120 经验 +60 收起 理由
    杨帆 + 30 + 60 + 30 匠心独运,细节精致入微!
    梦江南 + 30 + 60 + 30 匠心独运,细节精致入微!

    查看全部评分

  • TA的每日心情
    开心
    2026-4-16 07:41
  • 签到天数: 693 天

    [LV.9]以坛为家II

    479

    主题

    1万

    回帖

    4万

    积分

    贵宾

    Rank: 7Rank: 7Rank: 7Rank: 7Rank: 7Rank: 7Rank: 7

    花潮美女鼠牛虎兔龙蛇马羊猴鸡狗猪缤纷心情心曲飞扬花好月圆飞龙在天音画大师天籁妙音共看流星风雨同行我心永远喜乐安康花潮贵宾

    发表于 2026-4-16 14:25 | 显示全部楼层
    黑黑老师下午嚎!这同做音画有什么关系啊?对搞会计的有帮助。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2026-4-16 16:56
  • 签到天数: 507 天

    [LV.9]以坛为家II

    361

    主题

    3870

    回帖

    2万

    积分

    版主

    Rank: 7Rank: 7Rank: 7Rank: 7Rank: 7Rank: 7Rank: 7

    花潮帅哥鼠牛虎兔龙蛇马羊猴鸡狗猪多彩人生鹰傲苍穹飞龙在天王者至尊大将风范花潮版主

    发表于 2026-4-16 16:47 | 显示全部楼层
    确实漂亮,表格中的列分组标签 colgroup 用好不容易呢,谢谢马老师精彩讲授与演示
    ★青春是一个人的精神生命,奋斗是一个人最大的体面,学习是一个人最美的姿态。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2026-4-16 13:27
  • 签到天数: 1791 天

    [LV.Master]伴坛终老

    3188

    主题

    13万

    回帖

    28万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9Rank: 9Rank: 9Rank: 9Rank: 9Rank: 9Rank: 9

    花潮帅哥鼠牛虎兔龙蛇马羊猴鸡狗猪多彩人生星月交辉奔放热烈海样胸怀春风拂面火热情怀优雅迷人神秘浪漫相遇之美鹰傲苍穹花好月圆紫色情节飞龙在天王者至尊大将风范音画大师天籁妙音共看流星风雨同行我心永远幸福快乐喜乐安康侠骨柔肠心想事成开朗大方花潮管理

     楼主| 发表于 2026-4-16 18:57 | 显示全部楼层
    杨帆 发表于 2026-4-16 16:47
    确实漂亮,表格中的列分组标签 colgroup 用好不容易呢,谢谢马老师精彩讲授与演示

    这个关键是能够把表格的代码对应到真是表格的外观,换种说法就是:

    一、先认识 caption 是表格标题、thead 是表头、tbody 是表体,它们都是 <table> 的子层元素;

    二、thead 的子元素是 tr,tr 的子元素是 th,这是表头单元格的构建;

    三、tbody 的子元素是 tr,tr 的子元素是 td,这是表体单元格的构建;

    弄清楚上面的结构,再去理解 colgroup 就不难了。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2026-4-16 13:27
  • 签到天数: 1791 天

    [LV.Master]伴坛终老

    3188

    主题

    13万

    回帖

    28万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9Rank: 9Rank: 9Rank: 9Rank: 9Rank: 9Rank: 9

    花潮帅哥鼠牛虎兔龙蛇马羊猴鸡狗猪多彩人生星月交辉奔放热烈海样胸怀春风拂面火热情怀优雅迷人神秘浪漫相遇之美鹰傲苍穹花好月圆紫色情节飞龙在天王者至尊大将风范音画大师天籁妙音共看流星风雨同行我心永远幸福快乐喜乐安康侠骨柔肠心想事成开朗大方花潮管理

     楼主| 发表于 2026-4-16 18:58 | 显示全部楼层
    梦江南 发表于 2026-4-16 14:25
    黑黑老师下午嚎!这同做音画有什么关系啊?对搞会计的有帮助。

    不是所有的东东都和做帖有关。

    做帖子只用到 css、HTML、JS 中极少的一部分知识。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2026-4-16 16:56
  • 签到天数: 507 天

    [LV.9]以坛为家II

    361

    主题

    3870

    回帖

    2万

    积分

    版主

    Rank: 7Rank: 7Rank: 7Rank: 7Rank: 7Rank: 7Rank: 7

    花潮帅哥鼠牛虎兔龙蛇马羊猴鸡狗猪多彩人生鹰傲苍穹飞龙在天王者至尊大将风范花潮版主

    发表于 2026-4-16 19:22 | 显示全部楼层
    马黑黑 发表于 2026-4-16 18:57
    这个关键是能够把表格的代码对应到真是表格的外观,换种说法就是:

    一、先认识 caption 是表格标题、t ...

    这样就捋顺了,我学习一下~谢谢马老师悉心指导
    ★青春是一个人的精神生命,奋斗是一个人最大的体面,学习是一个人最美的姿态。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2026-4-16 13:27
  • 签到天数: 1791 天

    [LV.Master]伴坛终老

    3188

    主题

    13万

    回帖

    28万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9Rank: 9Rank: 9Rank: 9Rank: 9Rank: 9Rank: 9

    花潮帅哥鼠牛虎兔龙蛇马羊猴鸡狗猪多彩人生星月交辉奔放热烈海样胸怀春风拂面火热情怀优雅迷人神秘浪漫相遇之美鹰傲苍穹花好月圆紫色情节飞龙在天王者至尊大将风范音画大师天籁妙音共看流星风雨同行我心永远幸福快乐喜乐安康侠骨柔肠心想事成开朗大方花潮管理

     楼主| 发表于 2026-4-16 20:15 | 显示全部楼层
    杨帆 发表于 2026-4-16 19:22
    这样就捋顺了,我学习一下~谢谢马老师悉心指导

    很多人学习 table 的困惑就是没有理清代码和实际表格的对应关系。一个最简单的表格代码可以是这样:
    1. <table>
    2.     <tr>
    3.         <th>序号</th>
    4.         <th>姓名</th>
    5.         <th>性别</th>
    6.     </tr>
    7.     <tr>
    8.         <td>1</td>
    9.         <td>李军</td>
    10.         <td>男</td>
    11.     </tr>
    12.     <tr>
    13.         <td>2</td>
    14.         <td>魏芳</td>
    15.         <td>女</td>
    16.     </tr>
    17. </table>
    复制代码
    tr + th 构成表头单元格,tr + td 构成表体单元格。tr 实际上可以代表行,th/td 则将行划分出列,列数要前后一致(就是说 tr 下的 th/td 子元素的数量总是一样的。

    在上面代码结构基础上,可以加入 caption(表格标题栏)、thead(表头栏)、tbody(表体),不加入也行。如果不加入标题、表头、表体等标签,那么,colgroup 标签必须在第一个 tr 的前面。


    回复 支持 反对

    使用道具 举报

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

    本版积分规则

    小黑屋|手机版|Archiver|服务支持:DZ动力|huachaowang.com Inc. ( 蜀ICP备17032287号-1 )

    GMT+8, 2026-4-16 20:54 , Processed in 0.124880 second(s), 25 queries .

    Powered by Discuz! X3.4

    © 2001-2013 Comsenz Inc.

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