修复逻辑
特殊空格 → 标准空格
中文字符 = 2 × 数字 / 空格
两步缺一不可:只换字体会保留特殊空格,只清空格又无法保证字符占位一致。
为什么会错位?
不是排盘数据出了问题,而是旧式排版方式遇上了现代浏览器的字体渲染。
- 01
页面依靠空格排版
老页面没有用现代网格或表格锁定列宽,而是依靠连续空格把天干、地支与数字推到指定位置。
- 02
不换行空格参与计算
HTML 中的特殊不换行空格( )与普通空格并不完全相同,浏览器替换字体后更容易产生累计偏差。
- 03
系统字体不是严格等宽
苹方等阅读字体中,汉字、数字与空格的占位比例不固定;数字越多,整行偏移通常越明显。
步骤 1
安装等宽字体
下载字体文件后双击打开,选择“安装字体”。安装一次即可,浏览器会自动识别它。
文
LXGWWenKaiMono-Regular.ttf
霞鹜文楷等宽 · TrueType 字体
步骤 2
添加“一键对齐排盘”书签
先显示浏览器书签栏,再把下面按钮直接拖进去。也可以复制代码,手动粘贴到书签的“网址”栏。
把按钮拖到书签栏
按住按钮并拖到浏览器书签栏,名称会自动保存为“一键对齐排盘”。
Bookmarklet JavaScript
javascript:(function(){var w=document.createTreeWalker(document.body,4,null,!1);var n;while(n=w.nextNode()){if(!n.parentElement||!n.parentElement.closest('script,style,noscript,textarea')){n.nodeValue=n.nodeValue.replace(/\u00A0/g,' ');}}var old=document.getElementById('luosir-bazi-align');if(old)old.remove();var s=document.createElement('style');s.id='luosir-bazi-align';s.textContent='*, font, span, td, div { font-family: "LXGW WenKai Mono", "霞鹜文楷等宽", monospace !important; font-size: 16px !important; white-space: pre !important; letter-spacing: 0 !important; word-spacing: 0 !important; }';document.head.appendChild(s);})();按钮点不动是正常的:它需要拖入书签栏,或复制代码后手动创建书签。
Chrome 手动添加示意
- 1将书签名称改为“一键对齐排盘”。
- 2清空“网址”栏,完整粘贴以
javascript:开头的代码。 - 3保存到书签栏,之后在排盘页面点击它。

步骤 3
每次排盘后点一下
- 1打开元亨利贞网四柱八字在线排盘,并完成排盘。
- 2点击书签栏里的“一键对齐排盘”。
- 3页面会立即清理特殊空格并切换为等宽字体;刷新页面即可恢复原样。