纯HTML简历应优先使用语义化标签:个人信息用<section>与<dl><dt><dd>组合,教育/工作经历用<section><h3><time><p>嵌套结构,技能列表用<span>逗号分隔,确保ATS可解析、屏幕阅读器友好且PDF导出稳定。

用纯 HTML 写简历表,核心是语义化结构而非样式
不需要 CSS 也能输出可读、可访问、能被搜索引擎和屏幕阅读器识别的简历——关键在标签选对。<section> 包个人信息,<h2> 做小标题,<dl><dt><dd> 组合最适合“姓名:张三”这类键值对。别用 <table>,它语义上是处理二维数据(如课程表),不是展示个人字段。
姓名、联系方式等基础字段怎么组织才不踩坑
常见错误是全用 <p> 堆砌,导致结构松散、无法被解析工具提取。正确做法是用定义列表:<dl> 容器,每个字段一对 <dt>(术语)+ <dd>(定义)。比如:
<dl> <dt>姓名</dt> <dd>李四</dd> <dt>邮箱</dt> <dd><a href="mailto:li.si@example.com">li.si@example.com</a></dd> <dt>电话</dt> <dd><a href="tel:+8613800138000">138-0013-8000</a></dd> </dl>
-
<a href="mailto:...">和<a href="tel:...">让邮件/电话可点击,移动端直接唤起对应应用 - 避免写死“微信:wxid_abc123”,应改为
<dt>微信</dt><dd>wxid_abc123</dd>—— 没有交互需求时别强行加链接 - 地址建议拆成多行
<dd>或用<br>,但不要用多个<p>,否则语义断裂
教育经历和工作经历用什么标签最稳妥
别用 <ul> 或 <ol>——它们表示“项目集合”,但每段经历本身是独立区块,含时间、机构、职位、描述多个子项。推荐嵌套结构:<section> 包一层,内部用 <h3> 写学校/公司名,<time> 标时间(支持 datetime 属性),再跟 <p> 描述:
<section> <h3>清华大学</h3> <time datetime="2018-09/2022-06">2018.09 – 2022.06</time> <p>计算机科学与技术 学士</p> </section>
-
<time>的datetime值必须符合 ISO 8601(如2022-06),不能写“2022年6月”——否则失去机器可读性 - 如果经历有多个职位(如实习+正式),用多个
<section>,别塞进一个<div> - 避免用
<h4>或更低级标题做“专业技能”小类,统一用<h3>保持层级清晰
导出为 PDF 时字体/换行错乱?关键在打印样式控制
浏览器“另存为 PDF”默认忽略大部分 CSS,但 HTML 结构本身会影响分页和断行。容易出问题的点:
立即学习“前端免费学习笔记(深入)”;
- 长技能列表(如“JavaScript, TypeScript, React, Vue, Webpack, Vite…”)用
<ul>易被截断,改用<span>+ 英文逗号分隔更稳 -
<pre>里的内容会强制保留空格和换行,简历里少用;需要代码片段才用它 - 避免在
<dd>里嵌套<p>,可能导致 PDF 导出时多出空白行 - 如果必须加粗关键词(如“主导开发”),用
<strong>而非<b>—— 前者有语义强调,后者只是视觉加粗
复杂点在于:纯 HTML 简历在不同浏览器 PDF 导出效果不一致,<section> 和 <time> 这些语义标签虽不影响显示,但决定了它能不能被 ATS(招聘系统)正确提取字段——这点常被忽略。



















