可以更少地引用扩展属性吗?

2024-02-28

是否有可能以更少的时间扩展扩展财产?我在一个(分布式)文件中有定义,需要添加!important在我的特殊情况下,现有财产。

例如,我有一个定义此类的 less 文件

.pfx-grey-light-bg {
    background-color: #e5e5e7;
}

我现在想引用这个 less 文件,但将颜色扩展到重要的

.pfx-metro-orange-dark-bg:extend(.pfx-orange-dark-bg){
  //Pseudo code
  //background-color: &extended.backgroundColor !important
}

结果应该是

.pfx-metro-grey-light-bg {
    background-color: #e5e5e7 !important;
}

不,您不能以这种方式单独扩展单个财产。您可以扩展整个规则集,但是当您扩展时,选择器会被组合在一起,因此!important必须应用于两个选择器或不应用于任何选择器。

在您的情况下,属性值不同,因此选择器不能组合在一起。然而,如果background-color是原始类中您希望应用于派生类的唯一属性(或者)如果您希望将原始类的所有属性应用于派生类并追​​加!important对于所有这些,那么您可以使用以下内容。

.pfx-grey-light-bg {
    background-color: #e5e5e7;
}

.pfx-metro-orange-dark-bg{
    .pfx-grey-light-bg !important;
}

编译时,它将产生以下输出:

.pfx-grey-light-bg {
    background-color: #e5e5e7;
}
.pfx-metro-orange-dark-bg {
    background-color: #e5e5e7 !important;
}

或者,如果您的基类有多个属性并且您只想应用background-color对于派生类,那么您有以下三种选择:

选项 1:使用变量

@color: #e5e5e7;

.pfx-grey-light-bg {
    background-color: @color;
    color: #fff;
}

.pfx-metro-orange-dark-bg{
    background-color: @color !important;

}

选项 2:编写一个虚拟 mixin 并按如下方式使用它。这不会在输出 CSS 中导致任何额外的代码行,因为 mixin 有括号,因此不会输出。

.dummy-mixin(){
    background-color: #e5e5e7;
}
.pfx-grey-light-bg {
    .dummy-mixin;
    color: #fff;
}

.pfx-metro-orange-dark-bg{
    .dummy-mixin !important;
    padding: 10px;
}

选项 3:使用受保护的 mixin 和可选的更复杂@important决定是否追加的参数!important或不。除非您有非常迫切的需求,否则我不会推荐这样做。

.dummy-mixin(@color, @important: no){
    & when (@important = no){
        background-color: @color;
    }
    & when (@important = yes){
        background-cokor: @color !important;
    }
}
.pfx-grey-light-bg {
    .dummy-mixin(#e5e5e7);
    color: #fff;
}

.pfx-metro-orange-dark-bg{
    .dummy-mixin(#e5e5e7; yes);
    padding: 10px;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

可以更少地引用扩展属性吗? 的相关文章

  • 动态改变较少的变量

    我想在客户端更改一个 less 变量 假设我有一个 less 文件 color1 123456 color2 color1 111111 title color color1 text color color2 我希望用户选择一种颜色并更改
  • 在项目中使用 Node.js 作为独立的 LESS 编译器?

    我一直在尝试将lessc https github com cloudhead less js tree master bin在一个大型项目中使用 Bootstrap 进行基本设置的编译器 只会导致各种编译错误 每个人都有不同解决方案的票证
  • 配置Webpack将LESS文件的目录构建成相应的CSS文件

    我希望使用 Webpack 编译我们所有的 less 文件 less to public css并将它们作为常规 css 包含在我们的服务器端模板中 not将文本粘贴到使用 ExtractText 插件或重载 require 中 也就是说
  • 使用 LESS mixin 多次设置变量但得到错误的结果

    在前面 我今天开始少了 因此 欢迎提出如何做得更好的建议 我有以下 less 文件 test target context em target context 1em custom field position relative test
  • 如何在 webpack 中以正确的顺序导入样式

    我使用 bootstrap css 和一个用 less 编写的附加模板 我将两者导入到我的反应组件的根组件中 不幸的是 即使 less 文件是第二个导入的文件 引导程序中的样式也会推翻 less 样式 有没有办法确保 webpack 中样式
  • 媒体查询分组而不是多个分散的匹配媒体查询

    我正在尝试 LESS 不喜欢 SASS 语法 并一直试图找出用它进行媒体查询的最佳方法是什么 我通读了this http alwaystwisted com post php s 2012 05 05 everyday im bubblin
  • 使用 LESS mixin 添加供应商前缀

    我收到此混合的语法错误 vendors statement statement moz statement webkit statement 任何方法都可以做到这一点 或者混合变量必须位于 a 的右侧 从 Less v2 开始 你可以使用自
  • 可以更少地引用扩展属性吗?

    是否有可能以更少的时间扩展扩展财产 我在一个 分布式 文件中有定义 需要添加 important在我的特殊情况下 现有财产 例如 我有一个定义此类的 less 文件 pfx grey light bg background color e5
  • 通过 less 生成 CSS 组

    是否能够创建这样一个生成CSS组的mixin 我将在下面解释我的意思 fancymixin max prefix content what I don t know how to code fancymixin 10 x 它会生成类似以下内
  • 更少的 mixin 和变量

    我有以下混合 iconFont color green font size 18px color color font size font size 如果我只想更改第二个变量值 我需要编写第一个变量默认值吗 h1 iconFont gree
  • Node.js 找不到模块 - 干扰 Windows 上的 cygwin

    我正在测试 Bootstrap 框架 来自 Twitter 并尝试在安装 Node js 后在本地构建它 它失败了 因为它找不到 less 模块 我也使用 npm install g less 安装了该模块 C Users geir cod
  • 从 LESS 获得缩小的 CSS 输出的最佳方法是什么?

    是否有可能自动从 LESS 获取缩小编译后的 CSS 每次我改变一些东西 我都必须手动压缩它 我使用 less js 来编译 LESS Thanks lessc styles less x压缩命令已被弃用 你必须使用这个命令 lessc c
  • 有没有一个插件可以在我的网页中显示 HTML 代码

    我想在我的页面中显示大块 LESS 文件 我希望它看起来尽可能漂亮 以便看到它的用户能够轻松阅读 stackoverflow 让我像这样显示它 例如 header color red div myClass color blue 但是有没有
  • 如何在流体宽度容器中将左侧、中间和右侧的三个按钮放置在同一行?

    我在用着LESS在 Twitter Bootstrap 环境中 但我会直接接受CSS也有答案 Fluid width container Btn1 Btn2 Btn3 另一种宽度 Fluid width container Btn1
  • lessc:未找到命令

    我使用的是 OS X 8 并且是 Node LESS 的新手 我以为我之前安装了 lessc 当我转到 usr local bin 时 我看到了 lessc 但对于我的生活来说 我无法运行它 每当我运行它时 我都会看到 bash lessc
  • 根据变量值将 LESS 编译为多个 CSS 文件

    有一个指定颜色的变量variables less文件 例如 themeColor B30F55 和一个 json构成实体列表的文件 其中每个键是一个实体 ID 键的值是该实体的颜色 例如 8ab834f32 B30F55 3cc734f31
  • ubuntu 的 CSS 更少(并且自动编译)? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我尝试过 simples 但现在 l
  • 使用 grunt 编译具有不同变量的 LESS

    我有基于 Bootstrap 的 HTML 模板 有不同的颜色 红色 绿色等 颜色正在改变使用 brand变量在variables less 现在我转到这个文件 更改变量 编译 less 文件 进入已编译的 css 文件目录并重命名 CSS
  • Bootstrap 3:如何将默认网格设置为 960px 宽度?

    我正在使用 Bootstrap 3 客户希望将网站容器宽度设置为 960px 我是否直接编辑 CSS 文件 或者最好的方法是什么 我听说过一些关于 少 的事情 我可以自定义下载吗 谢谢 更新 该网站不需要响应 所以我可以禁用响应性 只需将
  • Webpack 4:如何使用 LESS 获取 CSS 源映射?

    多年来我一直在尝试让 CSS 源映射在 webpack 中工作 但没有成功 我不确定链条中哪里出了问题 我希望有人能指出我正确的方向 这是发生的事情 行号是错误的 实际上文件名也是错误的 main less只是包含一堆 import也就是说

随机推荐

  • 如何将 gRPC 定义的 API 引入 Web 浏览器

    我们想要为我们的 gRPC 微服务构建一个 Javascript HTML gui 由于浏览器端不支持 gRPC 我们想到使用 web sockets 连接到 node js 服务器 该服务器通过 grpc 调用目标服务 我们努力寻找一个优
  • 在 php 中使用 isset() 而不是 @ 是否有任何重要原因

    所以我正在努力清理一个可怕的代码库 并且我正在慢慢转向完整的错误报告 这是一个艰巨的过程 有数百条通知 内容如下 Notice Undefined index incoming in path to code somescript php
  • libgdx 将窗口定位在舞台之外

    我想知道如何使用 MoveToAction 或任何方法 将 scene2d 窗口定位在舞台之外 我希望菜单能够滑入和滑出 我的舞台和皮肤存储在我的世界级中 这些方法目前工作正常 但根本没有动画效果 Window window new Win
  • AVPlayer无法播放

    我想用 AVPlayer 播放远程 mp3 我无法让它工作 我也看不出它不起作用的原因 代码 NSString urlstr some link to a mp3 NSURL url NSURL URLWithString urlstr s
  • GS1-128条码解析

    扫描仪型号 Motorola DS4208 HC 我们需要解析 GS1 128 条形码 我们知道他们将使用 GTIN 01 批号 10 有效期 17 序列号 21 输入字符串 01 07612345678900 17 100503 10 A
  • 如何避免单个像素线在wpf中消失?

    我使用路径element StrokeThickness 1 SnapsToDevicePixels True 在网格中 我想调整窗口大小 Grid 元素被 Viewbox 元素包裹 Problem 当我调整窗口大小时 路径有时会消失 如果
  • 使用导航组件时从子级获取父级片段

    我需要将数据从一个片段传输到另一个片段 现在推荐的方法是使用共享ViewModel 为了在两个片段中获得相同的实例 需要共同的所有者 因为这可能是他们的共同点Activity 但通过这种方法 在单一活动的情况下 ViewModel实例将存在
  • 跨浏览器自定义复选框

    I have HTML and CSS我用来构建自定义复选框的代码 我相信我的代码具有正确的网络工具包 但它似乎不适用于 FireFox 这是代码 HTML
  • Delphi 带有 HTML/CSS 界面

    我想开发一个带有 HTML CSS 图形用户界面的 delphi 应用程序 不一定在 Web 浏览器中运行 我想这样做 创建一个更丰富的带有动画等的图形用户界面 并摆脱正常的 VCL 组件 Windows 外观 有什么建议么 HTML 和
  • 指针数组的大小

    我对 sizeof 运算符有疑问 Code 1 int main int p 10 printf d sizeof p output 40 return 0 Code 2 int main int p 10 printf d sizeof
  • 在 APK 文件中嵌入登录详细信息,每个用户都不同(或其他选项?)

    我们被要求为一家拥有现有网站和现有用户的公司创建一个 Android 瘦 Web 客户端 他们想要向用户发送彩信 为每个用户提供自己的下载 URL 该 URL 将指向专门为该用户创建的 Android apk 文件 它将包含该用户的网站登录
  • jQuery DataTables:控制表宽度

    我在使用 jQuery DataTables 插件控制表格宽度时遇到问题 该表应该是容器宽度的 100 但最终是任意宽度 而不是小于容器宽度 感谢建议 表声明看起来像这样 table class display cellspacing 0
  • 使用 texelFetch() 进行纹理化

    当我将非最大值传递到纹理缓冲区时 在渲染时它会绘制具有最大值颜色的几何图形 我在使用 glTexBuffer API 时发现了这个问题 例如 假设我的纹理数据是GLubyte 当我传递任何小于255的值时 那么颜色与用255绘制的颜色相同
  • 只更新更改的字段还是全部字段?

    我想知道在更新记录以检索现有记录 循环遍历字段检查更改并仅将更改的字段放入更新查询中是否值得花费服务器时间 我正在使用 MySQL 和 PHP 这样做的主要原因是为了减少更改日志的更新查询的大小 通常查询可能有 15 个字段 但实际上只有
  • Heroku - '@heroku/buildpack-registry 无法从 @heroku-cli/plugin-buildpacks 访问'

    我尝试通过 Heroku 启动我的 Nuxt SSR Universal 应用程序 因为 Netlify 不再满足我的需求 我需要后端功能 按照教程进行操作here https nuxtjs org faq heroku deploymen
  • 创建任务板模板

    基本想法是 我希望能够制作一个新的承包商任务板主模板 我将有一个称为承包商集成的迭代路径 里面有一个主模板 其中有 4 个故事 每个故事有 10 个任务 我希望能够通过更改分配给它的名称来为每个新来的人使用此模板 因此 每次我招募新人时 都
  • 组件属性不支持复杂内容(混合 C# 和标记)

    我正在尝试使用 Razor 参数并将其传递到 Blazor 中进行进一步处理 但在我尝试构建的 onclick 事件上收到此错误消息 组件属性不支持复杂内容 混合 C 和标记 img 标签如下 tr for int j 0 j lt Can
  • 宝石安装 ffi -v '1.1.5' osx 10.8

    我一直在尝试通过以下方式在 OSX 10 8 上安装 ffi gem install ffi v 1 1 5 结果 ERROR Error installing ffi ERROR Failed to build gem native ex
  • Pytest 不选取类内的测试方法

    一直使用Pythonunittest2 并且刚刚开始迁移到pytest 当然 我试图进行比较 但我无法弄清楚的一件事是 Question为什么 Pytest 不选择 测试 类中定义的测试方法 什么对我有用 login test py imp
  • 可以更少地引用扩展属性吗?

    是否有可能以更少的时间扩展扩展财产 我在一个 分布式 文件中有定义 需要添加 important在我的特殊情况下 现有财产 例如 我有一个定义此类的 less 文件 pfx grey light bg background color e5