【问题标题】:Sass selector with ampersands, plus with OR on another classSass 选择器带 & 号,加上另一个类的 OR
【发布时间】:2019-12-11 14:43:40
【问题描述】:

我有一个如下所示的按钮列表:

<button class="PatientImage-button"> <img src="1"> </button>
<button class="PatientImage-button"> <img src="2"> </button>
<button class="PatientImage-button"> <img src="3"> </button>
<button class="PatientImage-button active"> <img src="4"> </button>
<button class="PatientImage-button"> <img src="5"> </button>

突出显示是通过 css 样式 border-color: #000000 完成的。

单击按钮会调用一个事件,该事件会更新按钮的类以包含active。悬停并专注于按钮也应该这样做。

我试图让 sass 选择器正确,这样我就不必在文件中写两次 border-color: #000000。这是有效的:

.PatientImage {
  &-button {
    padding: 2px;
    &:hover, &:focus {
      border-color: #000000; 
    }
  }
}
.active {
  border-color: #000000; 
}

有没有办法用 Sass 选择器做这样的事情? (不工作)

.PatientImage {
  &-button {
    padding: 2px;
    &:hover, &:focus, .active {
      border-color: #000000; 
    }
  }
}

【问题讨论】:

  • 如果您尝试将&amp; 放在.active 之前会发生什么?如果没有&amp;,它会在.PatientImage-button 内寻找类active 的子元素。例如:&amp;:hover, &amp;:focus, &amp;.active {?
  • 行得通,谢谢...4分钟后你的答案被偷走了
  • 是的 :( 哦,好吧。我猜你活你学 ¯_(ツ)_/¯

标签: css sass


【解决方案1】:

试试下面的代码:

.PatientImage-button{
  padding: 2px;
  &:hover, &:focus,&.active{
    border-color: #000000; 
  }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-08-26
    • 1970-01-01
    • 1970-01-01
    • 2015-05-17
    • 2013-09-04
    • 2014-04-25
    • 2019-03-21
    相关资源
    最近更新 更多