CSS较少的伪类能否将选择器的属性传递给函数?
我目前正在尝试用更少的CSS为我的渐变创建一个单点定义。我已经创建了一个为我编写跨浏览器CSS代码的函数,但有一个问题我无法解决 我想指定一次渐变,并使用一个单独的函数(侦听参数“flip”)在hover上交换两个颜色变量。我在下面发布了一个示例:CSS较少的伪类能否将选择器的属性传递给函数?,css,css-selectors,less,pseudo-class,Css,Css Selectors,Less,Pseudo Class,我目前正在尝试用更少的CSS为我的渐变创建一个单点定义。我已经创建了一个为我编写跨浏览器CSS代码的函数,但有一个问题我无法解决 我想指定一次渐变,并使用一个单独的函数(侦听参数“flip”)在hover上交换两个颜色变量。我在下面发布了一个示例: selector { .background-gradient(rgba(27, 117, 185, .35), 48%, rgba(22, 97, 154, .35), 52%); } selector:hover { .backg
selector { .background-gradient(rgba(27, 117, 185, .35), 48%, rgba(22, 97, 154, .35), 52%); }
selector:hover { .background-gradient(flip); }
我一直在寻找解决办法,但当然什么也没找到。总而言之:我希望有一个函数,可以读取选择器的渐变值,并使用它们通过交换颜色来创建悬停样式。我希望这是可能的
提前谢谢
PS:创建侦听“翻转”(模式匹配)的函数不是问题,但我认为它可以让您更好地了解我实际要实现的目标。您想要什么还不是100%清楚,但为什么不使用类似的功能呢
.selector {
@startCol: rgba(27, 117, 185, .35);
@startPercentage: 48%;
@endCol: rgba(22, 97, 154, .35)
@endPercentage: 52%;
.gradient(@startCol, @startPercentage, @endCol, @endPercentage);
&:hover {
.gradient(@endCol, @endPercentage, @startCol, @startPercentage);
}
}
如果在悬停时翻转是很常见的,那么您可以将上面的代码创建为mixin,然后您只需在每个类/渐变定义中调用它一次
mixin无法知道之前传递给函数的参数,也无法使用值数组调用mixin。您想要什么还不是100%清楚,但为什么不使用类似的方法呢
.selector {
@startCol: rgba(27, 117, 185, .35);
@startPercentage: 48%;
@endCol: rgba(22, 97, 154, .35)
@endPercentage: 52%;
.gradient(@startCol, @startPercentage, @endCol, @endPercentage);
&:hover {
.gradient(@endCol, @endPercentage, @startCol, @startPercentage);
}
}
如果在悬停时翻转是很常见的,那么您可以将上面的代码创建为mixin,然后您只需在每个类/渐变定义中调用它一次
mixin无法知道之前传递给函数的参数,也无法使用值数组调用mixin。这正是我需要的。我从来没有想过在渐变混合中添加法线和悬停状态。谢谢!这正是我需要的。我从来没有想过在渐变混合中添加法线和悬停状态。谢谢!