css - 在 SCSS 中将标签名称嵌套到类样式中

标签 css sass

<分区>

我想为 <a> 嵌套选择器类内的标签 .class-name ,以便仅将这些样式应用于同时具有 <a> 的元素标签和类 .class-name使用 SCSS。我想做的可以通过以下方式执行:

.class-name {
  font-size: 40px;
 }
 
 a.class-name {
   color: #ff6666;
 }
<div class="class-name">Hello</div>
<a class="class-name" href="#">World!</a>

我在 SCSS 中使用 & 尝试了两种不同的方式父选择器

# successfully transpiled but no change
.class-name {
  font-size: 40px;
  &a {
    color: #ff6666;
  }
}

# Got an error trying to transpile
.class-name {
  font-size: 40px;
  a& {
    color: #ff6666;
  }
}

不想以相反的方式嵌套(.class-namea 内)。

最佳答案

我认为你必须使用 Sass' @-root .

.class-name {
  font-size: 40px;

  @at-root {
    a#{&} {
      color: #ff6666;
    }
  }
}

我个人觉得它读起来不是很愉快,更重要的是很难通过 ctrl+f 在文件中找到(如果你没有源映射)

编辑:如果整个 block 嵌套到其他东西中,将会中断......

关于css - 在 SCSS 中将标签名称嵌套到类样式中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47673111/

上一篇:css - 投影效果

下一篇:html - 如何为 1080x1920 移动设备和显示器调整网站大小?

相关文章:

css - 在文本后添加内容

javascript - 选项卡 - 需要在页面加载时隐藏内容并在单击时显示内容

css - 如何将样式应用于 SASS 中的类和媒体查询?

css - Koala Sass - 为什么 autoprefixer 不起作用?

list - Sass if 在每个内部

html - CSS3 HTML5 全景查看器

html - 如何使用 CSS 在 DIV 中垂直居中文本?

javascript - 如何将 css 元素更改添加到此 jquery 库中的 onclick 事件?

css - 当我通过 CSS 上的内容使用 'ç' 时出现额外的空格字符

css - 我如何让 Sass 与 Phalcon 一起工作?