css - 放置 :hover at end for some element's selector in LESS

标签 css less

在我看来,LESS 中似乎有一些看不见的东西。我希望在 CSS 中有这样的东西:

.animate.fade-in, .animate-hover.fade-in:hover {
  animation-name: fade-in;
}

我的 LESS 是:

.animate, .animate-hover:hover {
  &.fade-in {
    animation-name: fade-in;
  }
}

但我得到的是:

.animate.fade-in, .animate-hover:hover.fade-in {
  animation-name: fade-in;
}

:hover 的位置在输出中不正确。

最佳答案

这是一个棘手的情况,主要是因为它似乎是少即是多的情况。您可以像这样重复 .fade-in,而不是重复 .animate:

.animate {
   &.fade-in, &-hover.fade-in:hover {
      animation-name: fade-in;
  }
}

CSS 输出

.animate.fade-in,
.animate-hover.fade-in:hover {
  animation-name: fade-in;
}

但 LESS 输入看起来更复杂,几乎与预期的 css 输出一样长。所以最好只这样做......除非你正在使用这是构建混合以这种方式执行各种动画的基础,如下所示:

.nameAnimation(@name) {
    .animate {
        &.@{name}, &-hover.@{name}:hover {
          animation-name: @name;
      }
    }
}

.nameAnimation(fade-in);
.nameAnimation(fade-out);
.nameAnimation(whaaa);

关于css - 放置 :hover at end for some element's selector in LESS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22744567/

相关文章:

html - 为什么方向不能正常工作?

javascript - 导致移动设备水平滚动的 Facebook Like 按钮

css - Angular 中带有 mat-table 的 float 水平滚动条

html - 使用 css 选择器仅选择无序列表的父元素减去子列表?

html - 清除菜单上的悬停效果

jquery - 将 CSS 下拉菜单 megamenu 更改为 Jquery

css - 如何在 less 变量中保存样式?

html - Twitter Bootstrap 响应式导航(btn-navbar、icon-bar)颜色变化

less - 用更少的 css 转义整个声明

css - 超出范围