在 LESS 中引用具有多层嵌套的父级

2023-11-26

我有以下较少:

.container {
    .column, .columns {
        .one& {
            width: 40px;
        }
    }
}

当我编译时,我的 CSS 得到以下内容:

.one.container .column,
.one.container .columns {
    width: 40px;
}

但我期望得到:

.container .one.column,
.container .one.columns {
    width: 40px;
}

看起来父操作符 (&)在 LESS 中实际上指的是我期望成为祖父母的人。我是否正确地嵌套了东西?该文档没有显示任何嵌套超过一层的示例。我可以通过嵌套实现我想要的输出吗?

我正在使用通过 npm 安装的 lessc 1.3.3。


重要的是要考虑&作为更多的“亲子关系”组合器,而不是“父母”组合器。也就是说,它会将整个嵌套的选择器字符串带到该点(无论深多少层),并充当字符串替换持有者的等效项。所以用你的例子的简化版本......

.container {
    .column {
        .one& {
            width: 40px;
        }
    }
}

...该级别的选择器字符串是.container .column。这就是被“取代”的位置&,所以当你连接到开始正如您上面所做的那样,它会附加在开始 of 整个选择器字符串你最终会得到:

.one.container .column {width 40px;}

但是如果你从end(之间没有空格& and .) 然后...

.container {
    .column {
        &.one {
            width: 40px;
        }
    }
}

...变成:

.container .column.one {width 40px;}

这最后一张确实是班级组合你想要的,尽管只是不完全按照你希望的顺序。但顺序对浏览器来说并不重要,.one.column or .column.one是相同的,它只是意味着一个元素应用了两个单独的类,如下所示:

<div class="column one"></div>
<div class="one column"></div>

两者都是等价的,并且.one.column or .column.one因为选择器将选择两个元素,因为两个元素都有两个类。

如果顺序对您来说绝对重要(您必须让生成的 CSS 符合您的要求),那么您需要像这样进行一些重复:

.container {
    .column {
       ...generic column code here...
    }
    .one {
        &.column {
            width: 40px;
            ...any other code dependent on combination of .one.column here...
        }
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 LESS 中引用具有多层嵌套的父级 的相关文章

  • Web Essentials LESS 编译器没有给出错误消息

    使用 Visual Studio 2012 Update 2 Web Essentials 2 7 假设LESS有错误 保存文件时 预览窗格中会显示一条消息 上面写着 Compile Error See error list for det
  • Webpack / ES6:如何导入样式表

    我看到像 bootstrap 这样的存储库开始在它们的中包含额外的标签package json 文件 例如 style 和 less https github com twbs bootstrap blob v4 0 0 alpha 2 p
  • 如何在 Node.js 项目中自动执行编译 Twitter Bootstrap 等前端框架的任务?

    如何在 Node js 项目中自动执行编译 Twitter Bootstrap 的任务 我正在编辑 LESS 文件 这些文件编译成 Node js 项目的 Bootstrap 自定义版本 因此我不能只使用在线定制器或预编译的 JavaScr
  • 如何在 Chrome 中调试 LESS?

    看起来 LESS 调试自一年前以来已经取得了相当大的进步 我想知道有多少人有使用 Chrome Canary 中的开发人员工具进行调试的经验 我试图确保当我调试文件时 元素的 CSS 显示为 LESS 文件 而不是 CSS 文件 当我需要知
  • 媒体查询分组而不是多个分散的匹配媒体查询

    我正在尝试 LESS 不喜欢 SASS 语法 并一直试图找出用它进行媒体查询的最佳方法是什么 我通读了this http alwaystwisted com post php s 2012 05 05 everyday im bubblin
  • less.js 惰性工作表加载

    我想知道是否有办法加载单个less https github com cloudhead less js页面加载后的某个时间 这个问题 https stackoverflow com questions 3175013 load less
  • 可以更少地引用扩展属性吗?

    是否有可能以更少的时间扩展扩展财产 我在一个 分布式 文件中有定义 需要添加 important在我的特殊情况下 现有财产 例如 我有一个定义此类的 less 文件 pfx grey light bg background color e5
  • 如何使用 Bower 作为包管理器获取 Less v.2.0.0 的 Rhino 版本

    我正在使用 less js 的 Rhino 版本 使用 Bower 将其提取到我的开发环境中 在 1 7 5 下 一切正常 bower 将获得所有不同的版本 Node 和 Rhino 版本都将存储在我的环境中 最近更新到 2 0 0 后 似
  • 使用 LESS 将样式应用于子元素

    这有效 layoutList background color CFCFCF layoutList gt entityCard hover background color FFFFFF border 1px solid yellow 为什
  • 如何扩展具有动态形成选择器的类/混合

    如何扩展使用 组合器动态形成的 Less 类 less 产生预期输出 hello world color red foo extend hello world font size 20px 预期的 CSS 输出 hello world fo
  • 如何在 LESS 中使用 if 语句

    我正在寻找某种 if 语句来控制background color不同的div元素 我已经尝试过以下内容 但无法编译 debug true header background color yellow when debug true titl
  • wp_enqueue_style 和 rel 除了样式表之外?

    我创建 或者更好地尝试 使用 Less 创建我的第一个 WordPress 主题 我所做的就是在我的functions php中使用这样的脚本 wp register style screen css get bloginfo templa
  • Flash CSS 颜色在先前颜色和新颜色之间

    假设我有一个div添加了颜色background color red or green 我想让这个闪光变成另一种颜色 其中 非闪光 是以前的颜色值 HTML div class red make green flash div LESS r
  • LESS mixin 变量类名

    我正在使用 Font Awesome 4 0 0 并且想要在 LESS 中执行类似的操作 btn github btn btn primary margin left 3em i fa css prefix fa css prefix gi
  • SCSS 和 LESS 之间的区别

    我读过有关 SCSS 和 LESS 的内容 但我无法清楚地理解其中的差异 我知道SCSS和LESS都具有更多CSS的功能 我的意思是CSS的扩展 SCSS 和 LESS 有什么不同 哪一个更好 Both Sass https sass la
  • ASP MVC Less 文件给出: 调用目标已引发异常

    我有一个简单的 asp net mvc 4 站点 使用较少的文件 当我在本地电脑上运行它时 它工作正常 但是当我将其发布到服务器时 我收到以下错误 During the output text content of processed as
  • 通过 m2e 自动更新生成的 css 文件

    我正在使用lesscss maven plugin生成不同的css文件到目标目录 target generated sources 然后使用maven war plugin将此目录添加为 webResouce 这些文件将完美生成 但是 m2
  • 删除编译时的 LESS // 注释

    是否可以配置LESS在通过JS编译时删除 注释 我想从输出的 less 文件中删除它们 Less的单行注释 根据文档所述 应该保持沉默 单行注释在 LESS 中也有效 但它们是 沉默的 它们不会出现在编译后的 CSS 输出中 Hi I m
  • 将两个 .less 文件合并为一个

    假设我少了两个文件 first less a b font size 13px color lime and second less import first less a font family sans serif 我想要一种将它们组合
  • 在 React 中使用 .less 文件

    我正在尝试将 less 文件与极简主义 React 应用程序一起使用 使用创建反应应用程序 我已经添加less and less loader to my 包 json以及我的模块规则webpack config js文件 然而 类引用并未

随机推荐

  • 在 Core Data 中存储照片和视频?

    我正在开发一个应用程序 可以让用户录制视频和照片 现在我想知道存储它们的最佳方式是什么 第一个想法当然是将其保存在用户的照片库中 就像他从相机应用程序记录照片一样 并使用对文件的引用 现在存在的问题是用户可以从 照片 应用程序访问和删除文件
  • iOS 6 - UIWebView loadHTMLString 无法正常工作

    如果有人遇到以下问题 请告诉我您是否能够找到解决方案 我花了几天时间试图找到解决方案 但到目前为止还没有成功 我正在使用 XCode 4 5 和 iOS 6 SDK Golden Master 基本上 我的应用程序读取 HTML 文件并将其
  • 如何在 Angular2 中使禁用的反应表单可编辑

    我使用下面的代码创建一个表单并使其只读 我是角度新手 createForm this comapnyIdentificationForm this fb group businessName Validators required adre
  • 如何在 SVG 中获取多个内容的 ScrollBars

    我想要一个包含四个 SVG 内容的容器 SVG 现在 这四个 SVG 内容的内容超出了容器 SVG 中分配给它们的区域的内容 因此我要求滚动条自动出现 以便用户可以通过滚动看到完整的 svg 内容 我尝试通过添加属性宽度和高度来建立新视口
  • 从 vc++ 调用存储在堆中的代码

    想象一下我正在做这样的事情 void p malloc 1000 char p some opcode char p 1 another opcode for the sake of the example the opcodes are
  • 在 SWT-Widgets 上自动生成 ID

    有没有办法在 SWT Widgets 上自动生成 ID 以便 UI Tests 可以引用它们 我知道我可以使用 seData 手动设置 id 但我想以某种通用的方式为现有应用程序实现此功能 您可以使用以下命令为应用程序中的所有 shell
  • python 客户端服务器编程?

    这是 python 中的多线程服务器和客户端的源代码 在代码中 客户端和服务器在作业完成后关闭连接 我想保持连接处于活动状态并通过相同的连接发送更多数据避免每次关闭和打开套接字的开销 以下代码来自 http www devshed com
  • 为什么我的解决方案如此慢以及如何提高查询性能?

    目前我已经能够优化很多性能 但仍然有点慢 最新编辑 我当前的解决方案 最快的自动取款机 但仍然很慢 并保持秩序 server router post images function req res next var image bucket
  • 数组名是指针吗?

    C 中数组的名称是指针吗 如果不是 数组名称和指针变量有什么区别 数组是数组 指针是指针 但大多数情况下数组名称是转换的到指针 经常使用的一个术语是它们decay到指针 这是一个数组 int a 7 a包含七个整数的空间 您可以通过赋值将值
  • Pyspark 列转换:计算列中每个组的百分比变化

    我在本地计算机上使用 Pyspark 我有一个包含 450 万行和大约 30 000 种不同股票的 Spark 数据框 我需要计算每只股票随时间变化的百分比 我已经运行了 orderBy 以便将所有股票分组在一起 如下例所示 下面是一个简化
  • 在curl 7.33.0中使用--http2.0选项给出了不受支持的协议

    我使用的是centos 6 2 我需要在其中一个服务器请求中使用curl http2 0 但在查看之后我使用的是7 19 6http curl haxx se docs manpage html给我 http2 0 选项仅支持curl 7
  • Python:使用自动 Y 缩放绘制烛台

    我正在寻找一个Python绘图库 它允许我通过鼠标滚轮滚动 或类似 进行X缩放并在缩放时自动缩放Y轴来绘制烛台 最好是OHLC柱变体 作为我正在寻找的一个例子 tradingview com 完美地做到了这一点 看https uk trad
  • Spring Cloud:Feign 和 Http 连接池

    谁能告诉我 Spring Cloud Feign 客户端是否提供或支持 Http 连接池 如果是 如何配置池大小等设置 我在官方文档中似乎找不到这个 谢谢 通过调查 我将尝试回答我自己的问题 Spring Cloud Feign 使用 Ne
  • 为什么将闭包传递给接受函数指针的函数不起作用?

    In the 第二版Rust 编程语言 强调我的 函数指针实现了所有三个闭包特征 Fn FnMut and FnOnce 因此您始终可以将函数指针作为参数传递给需要闭包的函数 最好使用泛型类型和闭包特征之一来编写函数 以便您的函数可以接受函
  • 如何创建和使用ASP.NET vNext类库NuGet包?

    我想创建 ASP NET vNext 类库的 NuGet 包 我该怎么做 一步一步 我明白有kpm build 但我找不到关于在哪里下载 kpm 等的指南 另外 在获得它的 NuGet 包 或 DLL 后 如何将其从本地计算机添加到我的 v
  • 如何快速更新Google云存储上的静态站点?

    我有一个托管在谷歌云存储上的静态网站 我按照此处描述的相同方法进行设置 https cloud google com storage docs hosting static website 我已经购买了一个域名 目前网站运行顺利 我仍在更改
  • Asp.Net (MVC):哪个会话超时是什么?

    我制作了一个 Asp net MVC 网站 我对不同的超时设置感到非常困惑 有什么区别 web config 中的 SessionState 超时 应用程序池超时 Asp Net 会话超时属性 如果我想要 例如 6 小时的超时 我应该设置哪
  • PyQt4 - 从 QListWidget 中删除项目小部件

    我有一个 QListWidget 我需要删除一些项目 根据我的研究 这通常是一件令人不愉快的事情 我已经阅读了大量的解决方案 但没有一个适用于我的特定场景 目前 我只有实际的 Item Widgets 需要处理 不是它们的值或索引 这是因为
  • Visual Studio 忽略 #if DEBUG / RELEASE 范围内的代码,并且不检查错误或自动完成

    我一直在写一个 if DEBUG else endif代码片段 我注意到 Visual Studio 不允许我使用自动完成来完成部分键入的成员名称 并且它不会检查灰显的非活动代码是否有错误 我发现让它再次受到关注的唯一方法是将构建模式从 调
  • 在 LESS 中引用具有多层嵌套的父级

    我有以下较少 container column columns one width 40px 当我编译时 我的 CSS 得到以下内容 one container column one container columns width 40px