html通知列表用结构,内联svg/字体图标搭配aria-hidden="true",文字含标题和时间,css用flex布局对齐并设vertical-align,支持未读/已读/错误状态徽标及可访问性属性。

用 HTML 制作带徽标的系统通知列表,核心是结合 <ul></ul> 或 <ol></ol> 结构 + 图标(徽标)+ 语义化内容排版。不依赖框架也能实现简洁、可访问、易维护的效果。
使用 <li> 搭配内联图标(推荐基础方案)
徽标通常用小尺寸 SVG 或字体图标(如 Font Awesome、iconfont),插入在每条通知的开头:
- 用
<span></span>或<i></i>包裹图标,添加 class 控制大小/颜色(例如class="icon-bell") - 图标后紧跟通知文字,用
<strong></strong>标出标题,<small></small>或<time></time>显示时间 - 为提升可访问性,给图标加
aria-hidden="true",关键信息保留在文本中
示例代码:
-
新消息到达
您有一条来自张三的未读消息
-
备份已完成
本地文件已成功同步至云端
用 CSS 精确控制徽标与文字对齐
图标默认可能和文字基线不齐,需微调视觉一致性:
- 给图标设置
vertical-align: middle或top,避免上下偏移 - 用
display: flex布局.notification-item,让图标和内容横向居中对齐 - 图标加
margin-right: 8px保持呼吸感;文字区域设flex: 1自适应宽度
支持状态徽标(未读/已读/错误)
不同通知类型可用不同徽标区分,通过 class 动态切换:
- 未读:? 或红点
<span class="badge unread"></span> - 已读:✔️ 或灰调铃铛
- 系统警告:⚠️,错误:❌
- 用 CSS 控制徽标颜色/背景,例如
.unread { background: #ff4d4f; }
增强可访问性与语义(进阶建议)
屏幕阅读器用户需要理解通知的性质和状态:
- 给
<ul></ul>加role="region" aria-label="系统通知" - 每条
<li>加role="alert"(仅限紧急通知)或aria-live="polite"(普通更新) - 未读项添加
aria-labelledby关联标题,或用aria-describedby关联时间 - 避免仅靠颜色传达状态(如只用红色表示错误),搭配图标或文字说明
不复杂但容易忽略的是:徽标本质是视觉辅助,内容本身必须完整独立可读。只要结构清晰、图标语义明确、CSS 排版稳健,就能做出既美观又健壮的通知列表。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











