css - 使用嵌套选择器和 vuejs CSS 模块

标签 css vue.js module

使用 vuejs css modules 时是否可以使用嵌套的 css 选择器? ?

例如,我想限定此 css 的范围(以便 id 不影响子组件):

.list {
    ...

    .item {
       ...
     }
}

在文档中我只能看到非嵌套示例,但这是否方便,因为我需要将它们命名为类似于 BEM 的 .list-item。但是,如果我使用 BEM,那么使用 css 模块就没有意义了,是吗?

最佳答案

是的,可以使用嵌套的 css 选择器,因此它们不会影响子组件;使用 css 模块。

您需要使用预处理器来启用嵌套,LESSSASS .

如果使用 Single File Components你的组件看起来像这样

<template>
  <ul :class="$style.list">
    <li :class="$style.item"></li>
  </ul>
</template>

<!--       Or lang="less" -->
<style module lang="scss">
.list {
    ...

    .item {
       ...
     }
}
</style>

关于css - 使用嵌套选择器和 vuejs CSS 模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53093518/

相关文章:

javascript - 单击 span 元素时平滑滚动到特定的 div

html - 将 SVG 元素保持在精确的像素上

symfony - Vuetify 在 symfony 项目中

node.js - NPM 包作为 self 的嵌套依赖

python按名称获取模块变量

javascript - 滑动切换 [Jquery 函数] 不工作

css - 突出显示 "pushed"和 "disabled"状态的按钮

vue.js - 无法读取未定义的属性(读取 '$store')

vuejs2 - Vuex 存储状态未定义

Linux 内核模块——安全风险?