qin 发布于
>=2.26.0
在 1.3.3 基础上合并落地一轮性能、无障碍与可维护性优化。相关 PR:#15。
更新内容
- 锚点修复:修复首页「看看我的文章」等锚点跳转落点被固定导航遮挡的问题,
scroll-padding-top按导航高度 + 12px 偏移(实测落点 88px ≥ 导航 76px)。 - 无障碍:汉堡菜单动态切换
aria-expanded/aria-controls/aria-label,Esc 关闭并归还焦点;返回顶部尊重系统「减少动态」偏好;分页禁用态改为不可聚焦的<span>(不再进入 Tab 序),可用态补rel="prev/next",移除javascript:伪链接。 - 性能:文章封面、作者头像与 hero 图统一
loading="lazy" decoding="async";天气画布 resize 防抖 150ms、仅宽度变化时重建粒子。 - 视觉一致性:单色 SVG 图标改用 CSS mask 着色;行内代码、雾面渐变与滚动条(含 Firefox
scrollbar-color)全部由强调色--green派生,主题设置改强调色后全站同步生效;补theme-colormeta。 - 可维护性:置顶大卡抽取为
modules/post-featured.html片段供列表/网格两分支共用(守卫置于外层th:block,规避th:replace优先级陷阱);visit-badge片段自门控「显示文章浏览量」开关,调用方不再重复判断;删除四个冗余叶子 SVG。 - 与 1.3.2 / 1.3.3 调和:沿用「置顶不要求封面、封面独立可选」语义与精选专题全量已发布筛选(外层
th:block求值);无 JS 降级统一为reveal-ready机制;保留 1.3.3 阅读排版(摘要 16px / 400、容器 1280px、置顶封面 3.4:1 / 移动端 2:1)。
真机验证
环境:Halo 2.26.1 官方 jar + H2 数据库、无头 Chrome(CDP)。
- 正式 ZIP 升级安装成功,后台识别版本 1.3.5、主题 READY,既有主题设置保留。
- 首页、归档、分类、标签、文章、独立页、作者页全路径返回 200,不存在路径按预期 404;多页数据下分页第二页正常(
rel="prev/next"、禁用态为 span、无javascript:)。 - grid / list 双布局:无封面置顶文章仅渲染一次且不输出空封面图,既有置顶不重复;无封面置顶不进入精选专题。
- CDP 禁用脚本后,首页 / 分类 / 标签页
.reveal元素全部可见(reveal-ready降级生效)。 - 菜单 aria / Esc / 焦点归还、锚点落点、强调色注入联动 mask 图标与滚动条,逐项复核通过。
- 1440 / 390 / 320px 三档视口均无横向溢出;控制台无主题侧报错。
升级方式
- 下载本 Release 附件中的
theme-luye.zip。 - Halo 后台 → 外观 → 主题 →「绿野 Luye」→ 升级 → 上传 ZIP。
- 原有主题设置保存在 ConfigMap 中,升级不会丢失。
附件校验
- 文件数:31
- SHA-256:
7364919a8918d9c8f4bd97ade33006b4600c7ebf30a31f92eccec39e38e37a29 - 最低 Halo 版本:2.26.0
资源下载
- theme-luye.zip
