Css 在更少的情况下,是否可以导入一个选择器';将内容转换为另一个?

Css 在更少的情况下,是否可以导入一个选择器';将内容转换为另一个?,css,less,Css,Less,我的目标是导入内容:'\e826'从一个图标类转换到另一个选择器,以防内容属性将来发生更改 .icon-hi:before {content: '\e826';} .panel { background: white; .panel-title { &:before { @include .icon-hi; text-align: center; width: 20px;

我的目标是导入
内容:'\e826'从一个图标类转换到另一个选择器,以防内容属性将来发生更改

.icon-hi:before {content: '\e826';}

.panel {
    background: white;
    .panel-title {
        &:before {
            @include .icon-hi;
            text-align: center;
            width: 20px;
            height: 20px;
        }
    }
}

当然,
@import
不适用于此,但是还有其他方法吗?

为了在一个位置定义值,您应该使用变量:

@icon-hi: '\e826';

.icon-hi:before {content: @icon-hi;}

.panel {
    background: white;
    .panel-title {
        &:before {
            content: @icon-hi;
            text-align: center;
            width: 20px;
            height: 20px;
        }
    }
}
实际上,您可以“将一个选择器导入另一个选择器”。这就是mixin的基本功能。以下是less文档中的前两个功能:


第三个选项是使用扩展功能:

为了在一个位置定义值,应该使用变量:

@icon-hi: '\e826';

.icon-hi:before {content: @icon-hi;}

.panel {
    background: white;
    .panel-title {
        &:before {
            content: @icon-hi;
            text-align: center;
            width: 20px;
            height: 20px;
        }
    }
}
实际上,您可以“将一个选择器导入另一个选择器”。这就是mixin的基本功能。以下是less文档中的前两个功能:


第三个选项是使用扩展功能:

您可以,下面是示例:

.icon-hi{
  &:before{
    content: '\e826';
  }
}

.panel {
    background: white;
    .panel-title {
    .icon-hi;
            &:before {
                text-align: center;
                width: 20px;
                height: 20px;
            }
        }
    }

您必须先定义.icon hi类,然后再使用嵌套进行定义,以便预处理器知道要获取什么。

您可以,以下是示例:

.icon-hi{
  &:before{
    content: '\e826';
  }
}

.panel {
    background: white;
    .panel-title {
    .icon-hi;
            &:before {
                text-align: center;
                width: 20px;
                height: 20px;
            }
        }
    }

您必须先定义.icon hi类,然后再使用嵌套进行定义,以便预处理器知道要获取什么。

谢谢Ali,尽管这会使更新我的icon类变得更加困难。目前,我将fontello中的图标捆绑起来,并将所有更新的
.icon-
类放在fontello中。希望我能参考课程内容。看起来没有VAR是不可能的。我用更多的选项更新了我的答案。您应该研究mixin以及extend。您可以尝试类似于
.panel title:extend(.icon hi all)
的方法。最好的选择是,如果您使用的库的源代码较少,您可以将源代码包含在自己的库中,直接使用它们的变量并将它们全部编译在一起!我成功了!结果是
.panel title{/*styles*/&:extend(.icon hi all);&:before{text align:center;/*etc/*}
。非常感谢阿里!谢谢阿里,尽管这会让更新我的图标类更加困难。目前,我将fontello中的图标捆绑起来,并将所有更新的
.icon-
类放在fontello中。希望我能参考课程内容。看起来没有VAR是不可能的。我用更多的选项更新了我的答案。您应该研究mixin以及extend。您可以尝试类似于
.panel title:extend(.icon hi all)
的方法。最好的选择是,如果您使用的库的源代码较少,您可以将源代码包含在自己的库中,直接使用它们的变量并将它们全部编译在一起!我成功了!结果是
.panel title{/*styles*/&:extend(.icon hi all);&:before{text align:center;/*etc/*}
。非常感谢阿里!