如何在LESS中的类中定位id?

Gen*_*oki 6 css less

相对较新的LESS并尝试嵌套如何工作.我已经阅读了较少页面上的内容.

HTML

<!DOCTYPE html>

<html>
<head class="Setup">
    <link rel="stylesheet/less" type="text/css" href="../LESS/core.less"/>
</head>
<div class="Test">
    <span id="Test1" class="Test2"></span>
</div>
</html>
Run Code Online (Sandbox Code Playgroud)

.Test2 {
    display: block;
    #Test1 {
        .background1;
        width: 40px;
        height: 1000px !important;
    }
}
Run Code Online (Sandbox Code Playgroud)

但如果我在没有嵌套的情况下写它就可以了

.Test2 {
    display: block;
}

#Test1 {
    .background1;
    width: 40px;
    height: 1000px !important;
}
Run Code Online (Sandbox Code Playgroud)

.background只是{background:red;}.这个概念在我的脑海里搞砸了吗?

Rio*_*ams 10

嵌套问题和不匹配的标记

嵌套通常表示特定元素将出现在另一个元素下面,因此您当前的代码具有正确的想法.

目前,您的嵌套示例将尝试将具有id"Test1" 的元素作为目标,该元素嵌套在具有类"Test2"的元素下方,该元素与您的标记不同.

如果您想使用相同的标记来定位元素,请考虑将最外层的.Test2选择器更改为.Test:

/* This will target an element with id "Test`" below an element with class "Test" */
.Test {
    display: block;
    #Test1 {
        width: 40px;
        height: 1000px !important;
    }
}
Run Code Online (Sandbox Code Playgroud)

您可以在下面看到如何将其转换为CSS:

在此输入图像描述

背景检查语法

此外,.background您使用的选择器似乎存在问题.你是不是要在"Test2"元素下面定位一个额外的样式,如下例所示?

.Test {
    display: block;
    #Test1 {
        .background{
          width: 40px;
          height: 1000px !important;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

其编译如下:

在此输入图像描述