当前位置: 首页 > 面试题库 >

SASS中的选择器的结尾和部分的与号(&)

郑晨
2023-03-14
问题内容

我遇到了一个问题。我有这个mixin(这是尝试将更少的端口移植到sass):

@mixin button-variant($color, $background, $border)
    {
        ...
        .foreverAlone{
            ...
        }

        .iThink .illNeverWork& {

            color: $pinkUnicornRainbow;
            ...
        }
  }

显然这是行不通的:D我希望它生成如下内容:

.callerClass .foreverAlone{
    ...
}

.callerClass .iThink .illNeverWork.callerClass{

    color: #123ABC;
    ...
}

mixin在各种div类中被调用,因此不可能(轻松)使其变为静态。

Sass专业人士(或非专业人士,但比我聪明)是否有任何解决方法?感谢大家的关注和分享您的解决方案。


问题答案:

对于Sass 3.2和更早版本,这些是使用父选择器的所有有效方法:

.foo {
    &, &.bar, &#bar, &:after, &[active] {
        color: red;
    }
}

.foo {
    .bar & {
        color: red;
    }
}

从Sass 3.3开始,这是有效的:

.foo {
    &bar, &-bar {
        color: red;
    }
}

从Sass 3.4开始,这是有效的:

.foo {
    $foo: &;
    @at-root bar#{&} {
        color: red;
    }
}


 类似资料:
  • 问题内容: 用逗号分隔 的CSS选择器部分的正确术语是什么? 在这些部分,什么是部分术语 通过组合子分隔 (空格,,,等)? 问题答案: 用逗号分隔 的CSS选择器部分的正确术语是什么? 这些称为复杂选择器 。整个逗号分隔的列表称为 选择器列表 。 在这些部分,什么是部分术语 通过组合子分隔 (空格,,,等)? 这些被称为复合选择器。 因此,选择器列表由一个或多个用逗号分隔的复杂选择器组成,每个复

  • 正如您在代码中所看到的,我希望“&”指的是“.app”,因为它在其他地方以及node_sass中都起作用。 这是样式化组件中的一个bug还是我遗漏了什么?下面是复制问题的codesandbox链接:- https://codesandbox.io/s/jolly-visvesvaraya-ibjd8?file=/src/app.js

  • 问题内容: 我想知道是否有人可以帮助查询来选择列的一部分。 “ criteriadata”列包含的数据如下所示: 条件数据 14 27 15 C 14 30 15 DD 14 38 15通过 14 33 15通过 如何只选择数字15之后的数据。 非常感谢。 问题答案: SQL小提琴演示

  • CSS的选择器有多种形式,根据所获取元素的不同,选择器分为五大类:基本选择器、关系选择器、属性选择器、伪元素选择器、伪类选择器。 伪类选择器,按其功能又可细分为:链接伪类选择器、结构伪类选择器、否定伪类选择器、目标伪类选择器、语言伪类选择器、UI状态伪类选择器。如图 2‑2 所示: 图2-2 CSS选择器分类 本章所列的选择器,已经注明定义该选择器的CSS版本。由于CSS本身具有向后兼容性,如果浏

  • 问题内容: 偶然(在一个答案的帮助下),我找到了正确解决方案的方法。问题是我不明白为什么它们会产生不同的结果。 因此,数据库具有以下架构: 而我在寻找一切从模型,并与 最高 价格。所有这些表都可能具有非唯一列,因为不同的项目可能具有相同的模型。 我最初的解决方案是: 结果不正确-系统返回。 正确的解决方案是这样的: 那么,为什么与溶液产生不同的结果呢? 关于sql引擎: 因此,我不知道他们确切地使

  • 问题内容: 我不确定这是否可能,但是我有一种情况,我想在HTML select标记的选项内将文本的 一部分 (不是全部)加粗。 我尝试使用b标签以及强标签,但没有运气(在Chrome上)。CSS可能会起作用,但是由于它在元素级别起作用,所以我不确定该怎么做。 有什么办法吗? 问题答案: 没有; 这是不可能的。 相反,您可以使用Javascript制作伪造的下拉列表。