Css 是否有用于将后代输出到根的SASS规则?

Css 是否有用于将后代输出到根的SASS规则?,css,sass,compass-sass,Css,Sass,Compass Sass,使用SASS&Compass,您是否仍然可以以缩进的子体方式写入,但可以添加规则/命令,以便将给定的子体写入另一个级别,例如root 因此: #example-id-1 { background: blue: #example-id-2 { background: red: #example-id-3 { background: yellow: } } } 通常会输出以下内容: #examp

使用SASS&Compass,您是否仍然可以以缩进的子体方式写入,但可以添加规则/命令,以便将给定的子体写入另一个级别,例如root

因此:

#example-id-1 {
    background: blue:

    #example-id-2 {
        background: red:

        #example-id-3 {
            background: yellow:
        }

    }

}
通常会输出以下内容:

#example-id-1 { background: blue: }
#example-id-1 #example-id-2 { background: red: }
#example-id-1 #example-id-2 #example-id-3 { background: yellow: }
但是可以将规则应用于
#example-id-2
#example-id-3
,以便输出如下:

#example-id-1 { background: blue: }
#example-id-2 { background: red: }
#example-id-3 { background: yellow: }

非常感谢

您正在根目录下查找
@

#example-id-1 {
    background: blue;

    @at-root #example-id-2 {
        background: red;

        @at-root #example-id-3 {
            background: yellow;
        }
    }
}

请注意,这是Sass 3.3的一项功能。

Sass仍然是CSS…按照您通常的方式操作。ID必须是唯一的,所以为什么不像上一个示例中那样对其进行样式设置?据我所知,ID在DOM中必须是唯一的,而不是CSS,所以可以以子代的方式使用。以这种方式嵌套id的原因在于以直观的逻辑方式跟踪子代。子代父代可能有多种样式,并且执行/继续的子代同级(无论多大)也可能有多种样式,因此,如果要删除子代并手动将其放置在父块之外,则维护会更加耗时(大量滚动CSS文件以找到正确的样式。)