在应用没有 javascript 的新变换值之前获取当前变换值
Get current tranform value before applying the new one without javascript
有什么方法可以连续应用相同的 css 变量吗?或者获取当前 css 属性 值然后附加一个新值?我需要这个来对一些嵌套元素应用多个转换。
工作示例需要 2 个单独的父变量和子变量
<style>
p {
transform: scale(var(--scale, 1)) scale(var(--parentScale, 1)) ;
}
</style>
<div style="--parentScale: 0.8">
<p style="--scale: -1;">Hello</p>
</div>
但我想这样写(不幸的是,内部 --scale 被父 --scale 取代,留下 'Hello' 未调整大小)
<style>
p {
transform: scale(var(--scale, 1));
}
</style>
<div style="--scale: 0.8">
<p style="--scale: -1;">Hello</p>
</div>
有什么解决方法吗?如果可能没有 js
在 div 中定义了 --scale 变量,但从未在 div 中使用过。
此代码段将 div 和 p 都设置为具有转换 ,每个都具有其相关的 --scale
div,
p {
transform: scale(var(--scale, 1));
}
<div style="--scale: 0.8">
<p style="--scale: -1;">Hello</p>
</div>
更新:评论中有一个澄清,dividual child,而不是父 div,需要 0.8 缩放。
因此,此代码段引入了第二个变量 --childscale,它最初设置为 1 并与 --scale 组合。任何未设置它的 div 不受影响。对于您要查找翻转的 div,-childscale 设置为 -1。
p {
transform: scale(calc(var(--scale) * var(--childscale)), 1);
}
<div style="--scale: 0.8; --childscale: 1;">
<p style="--childscale: -1;">Hello</p>
<p>Hello</p>
</div>
有什么方法可以连续应用相同的 css 变量吗?或者获取当前 css 属性 值然后附加一个新值?我需要这个来对一些嵌套元素应用多个转换。
工作示例需要 2 个单独的父变量和子变量
<style>
p {
transform: scale(var(--scale, 1)) scale(var(--parentScale, 1)) ;
}
</style>
<div style="--parentScale: 0.8">
<p style="--scale: -1;">Hello</p>
</div>
<style>
p {
transform: scale(var(--scale, 1));
}
</style>
<div style="--scale: 0.8">
<p style="--scale: -1;">Hello</p>
</div>
有什么解决方法吗?如果可能没有 js
在 div 中定义了 --scale 变量,但从未在 div 中使用过。
此代码段将 div 和 p 都设置为具有转换 ,每个都具有其相关的 --scale
div,
p {
transform: scale(var(--scale, 1));
}
<div style="--scale: 0.8">
<p style="--scale: -1;">Hello</p>
</div>
更新:评论中有一个澄清,dividual child,而不是父 div,需要 0.8 缩放。
因此,此代码段引入了第二个变量 --childscale,它最初设置为 1 并与 --scale 组合。任何未设置它的 div 不受影响。对于您要查找翻转的 div,-childscale 设置为 -1。
p {
transform: scale(calc(var(--scale) * var(--childscale)), 1);
}
<div style="--scale: 0.8; --childscale: 1;">
<p style="--childscale: -1;">Hello</p>
<p>Hello</p>
</div>