无论如何都要获取在手写笔规则集中匹配的类的名称?
我想要做的是干掉这个规则(很多人喜欢它):
.button
&:hover
button-hover-color-scheme(teal)
&.adwords
button-hover-color-scheme(adwords)
&.bingads
button-hover-color-scheme(bingads)
&.facebook
button-hover-color-scheme(facebook)
&.linkedin
button-hover-color-scheme(linkedin)
&.twitter
button-hover-color-scheme(twitter)
我想让它看起来像这样:
.button
&:hover
button-hover-color-scheme(teal)
&.adwords
&.bingads
&.facebook
&.linkedin
&.twitter
button-hover-color-scheme(matched-selector)
其中matched-selector
与adwords, bingads, facebook, linkedin, or twitter
中的任何一个实际匹配规则。
谢谢!
编辑:
有selector()功能但是它给了我整个选择器而不仅仅是最后一个匹配的部分。这几乎是我需要的,但我觉得必须有一种更简单的方法来引用匹配的选择器。
答案 0 :(得分:1)
您无法获取匹配的选择器,因为此选择器仅在浏览器运行时中定义。那时候不会有任何Stylus代码,因为浏览器将使用由Stylus编译的CSS。
答案 1 :(得分:0)
感谢Panya的回答,我开始尝试使用插值来解决这个问题并提出:
.button
&:hover
for network in 'google' 'bing' 'facebook' 'linkedin' 'twitter'
&.{network}
button-hover-color-scheme(lookup(network))
诀窍是循环遍历字符串列表,使用括号表示选择器,并查找将字符串转换回变量。