css - 字体系列的 CSS 变量是“无效属性”,即使变量之外的相同字符串很好
问题描述
对于以下h1
和h2
元素中的每一个,以下 CSSfont-family
以两种替代方式指定 a:(a) 作为传统字符串,例如,font-family: Tangerine,cursive;
和 (b) 作为先前定义的 CSS 变量,例如,font-family: var(--my-font-family-cursive);
其中一个替代项被注释掉。
您还可以在此 CodePen Pen中查看我的代码。
当我使用传统的字符串规范(注释掉 CSS 变量规范)时,一切正常。每个标题都以其所需的字体呈现,如下图所示:
但是,当我注释字符串规范并取消注释 CSS 变量规范时,该font-family
规范将被完全忽略,并且呈现默认为我的浏览器的用户代理规范serif
,如以下屏幕截图所示:
例如,Chrome 和 Firefox 开发者工具都认为font-family: var(--my-font-family-cursive);
是“无效的属性值”。见截图。
请注意,我使用相应的 CSS 变量语法来定义字体颜色--my-font-color
,--my-font-color-cursive
并且这些字体颜色被识别,导致 redh1
和 blue h2
。
一定是我忽略了一些愚蠢的事情,但我无法弄清楚为什么我的 CSS 变量公式被拒绝了。
这只是“CSS 文献”中的一个示例,它似乎准确地支持了我正在做的事情:CSS 变量 — 如何使用 CSS 自定义属性 。该来源提供了以下示例:
:root {
--headings-font-family: "Times New Roman", Times, serif;
}
h2 {
font-family: var(--headings-font-family);
}
这是我上面描述的代码(也在这个 CodePen Pen中):
<html>
<head>
<title>MWE: CSS variable for font-family not working</title>
<style>
@import url(https://fonts.googleapis.com/css?family="PT Sans");
@import url(https://fonts.googleapis.com/css?family=Tangerine);
:root {
--my-font-family: "PT Sans", sans-serif ;
--my-font-family-cursive: Tangerine, cursive ;
--my-font-color: red ;
--my-font-color-cursive: blue ;
}
h1, h2 { font-size: 3em ; }
h1 {
color: var( --my-font-color ) ;
/* font-family: "PT Sans", san-serif ; */
font-family: var ( --my-font-family ) ;
}
h2 {
color: var( --my-font-color-cursive ) ;
/* font-family: Tangerine, cursive ; */
font-family: var ( --my-font-family-cursive ) ;
}
</style
</head>
<body>
<h1>Just some text</h1>
<h2>Some more text</h2>
</body>
</html>
解决方案
尝试使用var(--variable)引用 css 变量时有额外的空间
h2 {
color: var( --my-font-color-cursive ) ;
font-family: Tangerine, cursive ; */
font-family: var( --my-font-family-cursive ) ;
}
推荐阅读
- python - FileNotFoundError: [Errno 2] 没有这样的文件或目录,Pyinstaller 正在搜索目录 \\_MEI97962\\cmudict\\VERSION
- python - 如何仅获取由 MySQL 中唯一用户标识标识的列的值?请参阅问题以获得更详细的解释
- r - 如何在 R 中最好地结合独特和匹配?
- c++ - 在 switch case 中使用按位或运算符
- javascript - 如何在 React js 中将字符串转换为时间格式
- python - struct.error:当我想使用 struct.pack() 时,结构格式中的字符不正确
- android - PDF 到 Epub 转换器
- angular - 仅列出 Azure Blobstorage 中 100 个 blob 中的 10 个 blob
- c# - 为什么我的代码将文档旋转 180 度?
- javascript - 不使用 Mediarecorder 保存 AudioBuffer