我需要重用一个css类,但有条件地更改它的一些属性.
例如,我希望将这两个类合并为一个类,以避免出现重复的行(我的真实场景中有更多重复的属性)
&__logo-small {
color: $white;
display: block;
max-width: 3rem;
&--link {
display: flex;
flex-direction: row;
height: 3rem;
width: 3rem;
}
}
&__logo-big {
color: $white;
display: block;
max-width: 6rem;
&--link {
display: flex;
flex-direction: row;
height: 6rem;
width: 6rem;
}
}
我发现这很棘手,因为变化发生在不同的层面.如果这是一个下沉级别,我可以使用继承,但在这种情况下,我被卡住了.
这样的事情可以实现吗?
编辑:为了获得更好的上下文,我添加了一段HTML.
我想要做的是为两种标志提供支持.
旧的格式叫做‘LOGO’,新的格式叫做‘desktopLogo’.它们的呈现方式不同.
<img *ngIf="logo" class="navbar__logo" [src]="logo" alt="logo">
<a
*ngIf="desktopLogo"
class="navbar__logo"
(click)="onItemClicked(desktopLogo)"
[attr.id]="desktopLogo.id"
>
<img class="navbar__logo--link" [src]="desktopLogo.icon" alt="logo">
</a>
注意,类NAVBAR__LOGO--LINK仅适用于新版本.
谢谢大家友善的回答,我是在皮特的建议下成功的!