You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CSS变量定义类元组值方法及字体失效问题修复

修复CSS变量字体不生效的问题

问题根源

你用了val()函数来设置--font-family变量,但这个函数是CSS里专门用来获取输入框、下拉选这类表单控件当前值的,根本不能用来定义静态的字体族列表,浏览器解析不了这种写法,自然字体就不生效了。

正确写法

直接把字体族列表当成普通字符串赋值给CSS变量就行,完全不用加val():

1. 全局默认字体设置

:root {
  /* 字体名带空格的话加引号,不带可以不加 */
  --font-family: 'Roboto', sans-serif;
}

2. 按语言切换字体

如果要根据页面的lang属性切换不同语言的字体,直接给对应选择器的变量赋值:

/* 默认给英文/西文用的字体 */
:root {
  --font-family: 'Roboto', sans-serif;
}

/* 中文页面切换成中文字体 */
[lang="zh-CN"] {
  --font-family: 'Noto Sans SC', sans-serif;
}

/* 把变量应用到页面元素上 */
body {
  font-family: var(--font-family);
}

额外提醒

  • 要是字体名里有空格或者特殊字符,记得用单引号或双引号包起来;单字的字体名(比如Arial)可以直接写不用引号。
  • 确认你在HTML头部加载的Google Fonts链接里,已经包含了你要用的字体,比如同时加载Roboto和Noto Sans SC的话,链接大概是这样的:
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Roboto&family=Noto+Sans+SC:wght@400;500&display=swap">

内容的提问来源于stack exchange,提问作者CHRIBUR_

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 04:50:34