HTML表格中rowspan与colspan未正常工作,寻求修复方法
修复表格rowspan/colspan异常问题
问题根源
- HTML标签闭合错误:包含
Secondary的<tr>未闭合,直接嵌套<tr>导致表格结构错乱 - 数据行缺失
<tr>起始标签:表头结束后第一个数据行没有<tr>开头,浏览器解析时自动补全导致布局异常 - 样式放置位置不规范:将CSS样式写在
<table>内部,不符合HTML结构规范
修复后的完整代码
<!DOCTYPE html> <html> <head> <style> td, th { padding: 0.9rem; } table { border-spacing: 10px; } table, td, th { border: 2.8px solid black; } tbody th { text-align:center; color:white; font-family: Georgia; } tbody td { text-align:center; color:black; font-family: Georgia; } </style> </head> <body> <table> <tbody> <!-- 表头行1 --> <tr> <th rowspan="3" bgcolor="purple">Primary</th> <th colspan="2" bgcolor="purple">Secondary</th> <th rowspan="2" bgcolor="purple">ICGSE</th> </tr> <!-- 表头行2 --> <tr> <th bgcolor="purple">Lower Secondary</th> <th bgcolor="purple">Upper Secondary</th> </tr> <!-- 表头行3:对应Primary的第三行占位 --> <tr> <th colspan="2" bgcolor="purple"></th> <th bgcolor="purple"></th> </tr> <!-- 数据行1 --> <tr> <td bgcolor="lavender">Myanmar</td> <td colspan="2" bgcolor="lavender">English</td> <td bgcolor="lavender">English ICGSE</td> </tr> <!-- 数据行2 --> <tr> <td bgcolor="lavender">Art and Design</td> <td colspan="2" bgcolor="lavender">Mathematics</td> <td bgcolor="lavender">Mathematics ICGSE</td> </tr> <!-- 数据行3 --> <tr> <td bgcolor="lavender">Science</td> <td colspan="2" bgcolor="lavender"></td> <td bgcolor="lavender">Business ICGSE</td> </tr> </tbody> </table> </body> </html>
关键修复点说明
- 补全所有未闭合的
<tr>标签,确保每一行的结构完整 - 为表头补充第三行的占位单元格,保证
Primary的rowspan="3"能正确覆盖3行数据 - 将CSS样式移至
<head>标签内,符合HTML结构规范 - 修正数据行的起始
<tr>标签,让浏览器能正确解析表格列数对应关系
内容的提问来源于stack exchange,提问作者Mary
相关产品推荐
相关产品推荐

