需严格嵌套/才能渲染,缺任一层则内容被忽略;表语义标题,表数据,须配scope属性;边框需border-collapse:collapse+单元格border;动态生成须处理空值及colspan/rowspan,且必加。

直接用 就能创建数据表格,不需要 JS、不依赖框架,但结构写错或漏关键标签,浏览器会“默默吞掉”内容,而不是报错。为什么
里写了文字却看不到表格?因为 必须包含 ,而 必须包含 或 。浏览器不渲染孤立的 或只写 这类结构——那段“姓名”会被当成纯文本塞到页面顶部, 容器本身则空着。- 错误写法:
(没 ,没 )
- 正确写法:
- 哪怕只有一行一列,也必须套三层:
→ →
怎样让表头和数据行语义清晰又不翻车?
不只是“加粗居中”,它告诉浏览器和屏幕阅读器“这是标题”, 是“这是数据”。混用或全用 会让无障碍支持失效,也容易在后续加样式时出问题。- 表头行统一用
,放在第一行(或第一列),别在数据行里塞
- 如果表格有横向表头(列名),给每个
加 scope="col";有纵向表头(如“合计”行),用 scope="row"
- 避免
| 姓名 |
张三 |
这种混用——语义断裂,CSS 选择器也难精准控制
边框看不见?不是没写对,是没合并边框
只给 加 style="border: 1px solid #000;",你会看到双线甚至四线边框,因为每个 都自带独立边框。真正起作用的是 border-collapse: collapse。- 必须把
border-collapse: collapse 写在 标签上,写在 上无效
- 再统一给
和 加 border: 1px solid #000; 和 padding,不然文字紧贴边框
- 调试时临时加
style="border: 1px solid red;" 到所有 /,能立刻看清哪些单元格被漏掉了
数据来自后端 JSON,怎么拼 才不手抖?别手动敲一堆 | ... | 。用模板字符串 + 循环最稳,尤其当字段顺序可能变、或某条数据缺字段时。
- 示例(JS):
data.map(item => `
| ${item.name || ''} |
${item.age || '-'} |
`).join('')
- 注意空值处理:
item.city 为 null 时,直接插进去会显示 “null”,得兜底
- 如果用了
colspan 或 rowspan,拼接时必须同步跳过对应位置的 | ,否则列数对不上,整行偏移
最容易被忽略的是 ——它不是可有可无的包裹层,而是浏览器解析表格结构的锚点。没它,JS 操作 table.tBodies[0] 会报错,CSS 里写 tbody tr:hover 也会失效。哪怕只有一组数据,也建议显式加上。
htmlppt.skill
把任意文章或文档内容转换成精美的全屏翻页 HTML 演示文件(幻灯片风格)。当用户发来一篇文章、文档链接、Markdown 内容、或粘贴的文本,并且希望生成演示用的 HTML 时触发。支持任意内容来源:iWiki 链接、KM 链接、本地文件路径、直接粘贴的文本。生成的 HTML 文件保存到本地工作区,并通过企微直接发送给用户。触发词示例:帮我把这篇文章做成PPT、转成演示文档、生成HTML幻灯片、做个演示、转成可以演示的格式、article to deck、make a slide。
下载
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|