小编wou*_*vdd的帖子

@smport在Sass的@if语句中

我只想加载登录页面所需的css以提高性能.在我的其他页面上,我想要一个分组的css文件,它将缓存在包含我所有css的每个页面上.

我有以下文件:

minifiedcssforloginpage.scss
grouped-pages.scss
Run Code Online (Sandbox Code Playgroud)

在minifiedcssforloginpage.scss中,我声明$ load-complete-css:false.然后我导入myproject.scss,其中包含我的模块,布局,核心的所有导入...在myproject.scss中我想做类似的事情

@if $load-complete-css {
     @import module1;
     @import module2;
     @import module3;
}
Run Code Online (Sandbox Code Playgroud)

因此minifiedcssforloginpage.scss将使用较少的css生成minifiedcssforloginpage.css,然后使用grouped-pages.css(将var $ load-complete-css设置为true)生成.

但是我得到一个错误,这是不可能的"导入指令可能不会在控制指令或mixins中使用".

import dependencies if-statement sass mixins

25
推荐指数
3
解决办法
2万
查看次数

SASS项目中的从右到左(RTL)支持

我想知道是否有可能将一个处理多个参数的mixin作为应转换为rtl的属性.我想做点什么

.css-selector {
    width: 300px;
    height: 200px;
    @include rtl {
         padding: 10px 5px 3px 4px;
         margin: 3px 8px 2px 5px;
    }
}
Run Code Online (Sandbox Code Playgroud)

用mixin:

$rtl = false !default;

 @mixin rtl() {
    @if $rtl {
        dir: rtl;
        @each $property in @content {
            //check property if it's padding or margin or something 
              else rtl-related... if hit use rtl mixin
            }
    }
    @else { @content; }

}
Run Code Online (Sandbox Code Playgroud)

我想我应该解析@content,但它不起作用("... h $ property in"之后的无效CSS:期望表达式(例如1px,粗体),是"@content {).

现在我用2个vars处理rtl:

 $dir: left !default;
 $opdir: right !default;
Run Code Online (Sandbox Code Playgroud)

我在rtl时改变了.我在我的sass文件中使用它

margin-#{$dir}: 15px;
Run Code Online (Sandbox Code Playgroud)

但我不认为这个解决方案足够灵活.而且我也不想在每个css属性中包含一个单独的mixin. …

sass right-to-left compass-sass

7
推荐指数
1
解决办法
3020
查看次数

如何通过* .csproject文件查找参考路径

我想制作一个自动化的powershell脚本,该脚本报告项目的引用和引用路径。当.csproj中的hintpath未填写时,我找不到找到引用路径的方法。

c# powershell reference

5
推荐指数
1
解决办法
2047
查看次数

如何从git中删除已删除的文件?

我已经提交并在bitbucket中推送了一个太大的文件,我已经在本地删除了它,提交并再次推送.但是在网站bitbucket上,存储库的大小仍然太大.

git push commit version bitbucket

4
推荐指数
1
解决办法
4488
查看次数

是否可以将mixin用于特定于浏览器的CSS

我正在寻找一种解决方案,将mixin用于浏览器特定的CSS黑客攻击.我正在使用JavaScript在HTML类中添加浏览器标记.喜欢.ie .ie7 .ie8 .ie9

我想使用mixin像:

.box-test {
margin: 10px;
@include browser(ie7) {
    margin: 20px;
    }
}
Run Code Online (Sandbox Code Playgroud)

期望的输出:

.box-test {
margin: 10px;
}
.ie7 .box-test {
    margin: 20px;
    }
Run Code Online (Sandbox Code Playgroud)

我试图制作的mixin:

@mixin browser($browserVar) {
    @if $browserVar == ie7 {
    .ie7 { @content }
    }
    @else if $browserVar == ie8 {
    .ie8 { @content; }
         }
    @else if $browserVar == ie9 {
    .ie9 { @content; }
    }
}
Run Code Online (Sandbox Code Playgroud)

问题是输出是:

.box-test {
    margin: 10px; }
.box-test .ie7 {
      margin: 20px; }
Run Code Online (Sandbox Code Playgroud)

browser sass mixins vendor-prefix

2
推荐指数
1
解决办法
6148
查看次数