我对SASS和LESS都是全新的(我知道这个概念,但从未使用它们),但我知道CSS。这个问题是关于是想法还是方向好,还是应该寻找其他?
我正面临着以下任务:我需要像往常一样创建.CSS文件除了所有选择器必须在一个div(具有其id)内选择性。所以正常的重置应该是:
/* ...*/
div#mydivid h1, div#mydivid h2, div#mydivid h3, div#mydivid h4, div#mydivid div#mydivid h5 {
/* ...*/
}
instead of:
/* ...*/
h1, h2, h3, h4, h5 {
/* ...*/
}
/* ...*/
显然我可以手动维护这个,并重写我的(和其他的)标准CCS-s,但我希望我仍然可以用标准的方式编写我的CSS(并使用现有的CSS),并且构建时间预处理器生成转换的,我将实际链接到我的页面。
这可能吗?谁有更好的主意? (我认为这不应该重要,但这是VS 2013和C#/ ASP.NET)
答案 0 :(得分:1)
使用Less或SASS / SCSS可以将整个样式表包装成div
。但是SASS has a feature to break out of any wrappers called @at-root
。
您甚至可以包装包含以获取任何样式表(SCSS)的包装:
div#mydivid {
@include _layout.scss
@include _module1.scss
}
/* or */
div#mydivid {
#{headings(1,6)} {
color: #333;
}
}
后者导致:
div#mydivid h1,
div#mydivid h2,
div#mydivid h3,
div#mydivid h4,
div#mydivid h5,
div#mydivid h6 {
color: #333;
}