继承 CSS 变量中的值
在 CSS 领域,自定义属性(也称为 CSS 变量)提供了巨大的灵活性和控制能力风格。当我们想要在变量中存储继承值时,就会出现一个常见问题。让我们深入研究解决方案。
挑战
考虑以下代码:
:root { --color:rgba(20,20,20,0.5); } .box { --color: inherit; background: var(--color); }
在这里,我们的目标是让背景继承来自 :root 元素的颜色。但是,由于继承规则,使用继承作为 --color 的值不起作用。
解决方案:后备值和初始关键字
存储继承的值,我们可以利用 CSS 变量的后备值特性。我们可以设置:
background: var(--color, inherit);
这告诉浏览器如果未定义 --color 则使用继承。但是,由于 --color 始终在 :root 级别定义,因此它不会使用后备。
为了解决这个问题,我们可以使用初始关键字将 --color 重置为其初始值:
.box { --color: initial; background: var(--color, inherit); }
使用初始有效地取消设置自定义属性,从而允许继承生效。此代码将成功从 :root 元素继承颜色。
以上是如何在 CSS 变量中存储继承值?的详细内容。更多信息请关注PHP中文网其他相关文章!