【问题标题】:Sass variable in quotes for href引号中的 Sass 变量
【发布时间】:2014-06-03 05:11:54
【问题描述】:

我正在为一个项目而苦苦挣扎。我在每个循环中多次使用的变量上使用选择器[href*=#{web}]。每个循环的目的是浏览导航栏上的链接,并为与社交媒体平台对齐的链接提供字体图标。正在运行的变量是诸如 twitter、facebook、linkedin 之类的东西,我正在尝试使用它来调用 url 并设置包含的 mixin。我的大问题是每次我尝试引用变量$web 以使其显示为css 的链接时,它会停止解析变量并在编译的css 文件中变成"#{$web}" 之类的东西。我该怎么做才能使变量编译但仍然引用 href?

【问题讨论】:

  • 您必须提供可以以有意义的方式复制的代码。这里没有什么我可以粘贴到 Sass 文件中来查看是否真的有问题。

标签: css sass


【解决方案1】:

所以,类似:

$sites: ("twitter.com", "facebook.com", "linkedin.com");

@each $site in $sites {
  a[href*="#{$site}"] {
    background-image: url("/images/" + $site + ".png");
  }
}

结果:

a[href*="twitter.com"] {
  background-image: url("/images/twitter.com.png");
}

a[href*="facebook.com"] {
  background-image: url("/images/facebook.com.png");
}

a[href*="linkedin.com"] {
  background-image: url("/images/linkedin.com.png");
}

【讨论】:

    【解决方案2】:

    试试这个作为你的选择器:

    [href*="#{$web}"]
    

    根据一些简短的研究,美元符号似乎强制输出变量值。

    【讨论】:

    • 我目前有[href*="#{$web}"] ,它在CSS中以a [href*="#{$web}"]的形式出现
    • 也许尝试更新您的 sass 版本?在我放在 codepen 上的快速演示中似乎对我有用:codepen.io/sdsanders/pen/dGwzj
    猜你喜欢
    • 1970-01-01
    • 2012-06-24
    • 2018-03-28
    • 1970-01-01
    • 2015-10-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多