关于Discuz网站全局字体统一设置的专业解决方案:
根据Discuz!开发规范和前端工程实践,可通过以下两种方式实现全站字体统一:
一、CSS全局样式方案(推荐)
1. 定位到当前模板目录:
template/您的模板目录/common/common.css
2. 在文件首部添加全局字体声明:
- body, input, textarea, button, select {
- font-family: "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- }
复制代码
3. 扩展适配方案:
- 中文字体优先声明:
- :lang(zh-CN), :lang(zh-TW), :lang(zh-HK) {
- font-family: "思源黑体", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
- }
复制代码
- 针对不同设备优化:
- @media screen and (-webkit-min-device-pixel-ratio:0) {
- /* Safari/Chrome专属优化 */
- body{ -webkit-font-smoothing: subpixel-antialiased; }
- }
复制代码
二、模板文件修改方案
1. 修改头部模板文件:
template/您的模板目录/common/header_common.htm
2. 在<head>区块内插入:
- <style>
- :root {
- --base-font: "HarmonyOS Sans SC", system-ui;
- }
- body {
- font-family: var(--base-font);
- }
- .portal,.forum,.user {
- font-family: inherit !important;
- }
- </style>
复制代码
注意事项:
1. Web安全字体栈建议组合:
- 中文:'HarmonyOS Sans SC', 'MiSans', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei'
- 西文:system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell
2. 字体加载优化:
建议通过WOFF2格式预加载关键字体,在/extend/common.css添加:
- @font-face {
- font-family: 'CustomFont';
- src: url('//static.dz-x.net/fonts/custom.woff2') format('woff2');
- font-display: swap;
- }
复制代码
3. 特殊元素处理:
- 编辑器内容字体需修改:
source/plugin/editor/template/css/common.css
- 移动端适配:
需同步修改template/您的模板目录/mobile/common/目录下的css文件
操作后请务必:
1. 后台→工具→更新缓存
2. 强制刷新浏览器(Ctrl+F5)
3. 检查第三方插件的单独样式表
如需可视化操作工具,可在DZ插件网获取我们开发的「全局字体管理」组件,该产品已通过Discuz!X3.5兼容性认证,支持:
✓ 多终端差异化字体设置
✓ 字体子集化加载
✓ CSS变量动态控制
✓ 字体降级策略配置
修改前请做好模板备份,推荐使用DZ插件网提供的「模板沙箱」插件进行安全测试。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。 |