在 CSS 网格中,命名网格区域是使用不带引号的 grid-area 属性定义的。这可能看起来违反直觉,因为在使用 grid: "area1 area2" / 1fr 1fr; 创建网格区域名称时,名称用引号引起来。然而,这种设计选择是为了与 CSS 规范的其余部分保持一致。
几乎所有 CSS 属性都使用标识符作为其值,而不是字符串。例外情况包括基于字符串的属性,例如字体系列、内容和网格模板区域。通过维护命名网格区域值的标识符,CSS 与其整体语法保持一致。
决定将命名网格区域表示为 grid-template-areas 中的字符串和网格区域中的标识符有两个用途:
CSS 网格规范开发过程中进行的讨论摘录解释了使用标识符背后的原因:
命名行的语法:
"以前的命名行语法很尴尬,并且使用字符串作为 CSS 内部标识符,我们在其他地方不使用它。通过切换到标识符,我们确保与其余 CSS 的一致性,并允许对名称进行可视化分组。“
在字符串上使用标识符:
”我们的建议是将行名称切换为标识符。这样做将解决当前可怕的语法问题,并提供与其余 CSS 语法的一致性。”
虽然乍一看似乎违反直觉,但使用命名网格区域的标识符可以增强整体效果CSS 的一致性。它与大多数属性值保持一致,允许更好的视觉分组,并实现不同网格语法之间的兼容性。
以上是为什么 CSS 命名的网格区域不包含在引号中?的详细内容。更多信息请关注PHP中文网其他相关文章!