【问题标题】:Conditional hover state in LESSLESS 中的条件悬停状态
【发布时间】:2014-09-04 09:11:24
【问题描述】:

我想为我的 LESS mixin 添加一个有条件的悬停状态。

我尝试了以下方法,但它返回错误:

.foo(@hoverstate:false){

   color:red;

   &:hover when (@hoverstate = true){
      color:blue;
   }

}

正确的语法是什么?

【问题讨论】:

    标签: if-statement less conditional mixins dotless


    【解决方案1】:

    dotless 不支持 "CSS guard" 构造,因此您需要一个 mixin 来将守卫放在那里,例如:

    .foo(@hoverstate: false) {
    
        color: red;
    
        .-(); .-() when (@hoverstate = true) {
            &:hover {
                color: blue;
            }
        }
    }
    

    可以简化为:

    .foo(...) {
        color: red;
    }
    
    .foo(true) {
        &:hover {
            color: blue;
        }
    }
    

    (请注意,我没有使用 dotless 测试此代码,因此您可能需要更正其他轻微的不兼容性)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-28
      • 2012-06-25
      • 1970-01-01
      • 1970-01-01
      • 2018-12-19
      • 2020-09-25
      相关资源
      最近更新 更多