首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >扩展scss文件中的多个类

扩展scss文件中的多个类
EN

Stack Overflow用户
提问于 2022-07-29 16:32:19
回答 2查看 165关注 0票数 0

我在我的项目中使用AdminLte,在html页面中有:

代码语言:javascript
复制
<aside class="main-sidebar sidebar-dark-primary elevation-4">
<aside>

一切都很好。

我创建了一个自定义scss文件以支持多个租户,导入了scss文件,然后创建了以下样式:

代码语言:javascript
复制
@import '_adminlte/node_modules/bootstrap/scss/bootstrap';
@import '_adminlte/build/scss/adminlte.raw';

.tenant-sidebar {
     @extend .main-sidebar, .sidebar-dark-primary, .elevation-4
}

因此,我将我的aside标记更改为:

代码语言:javascript
复制
<aside class="tenant-sidebar">
<aside>

但是,这样做只适用于main-sidebarelevation-4类。不应用sidebar-dark-primary类。

为什么会发生这种事?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-08-01 11:32:41

TLDR:

.sidebar-dark-primary类在adminlte.css中为空

正如我所看到的,sidebar-dark-primary类在生成的css文件中没有任何样式。它的唯一目的是像下面这样包装子元素样式:

.sidebar-dark-primary .nav-sidebar.nav-legacy > .nav-item > .nav-link.active

因此,当您@extend这个类时,不会有任何相关的样式。

票数 2
EN

Stack Overflow用户

发布于 2022-07-30 13:21:35

根据SASS Docs on @extend的说法

代码语言:javascript
复制
.tenant-sidebar {
     @extend .main-sidebar, .sidebar-dark-primary, .elevation-4
}

基本上意味着扩展这个选择器:.main-sidebar.sidebar-dark-primary.elevation-4

我想试一试:

代码语言:javascript
复制
.tenant-sidebar {
     @extend .main-sidebar;
     @extend .sidebar-dark-primary;
     @extend .elevation-4;
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73168415

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档