标签: sass

使用&符号(&)与类型选择器组合使用Sass

我在Sass筑巢时遇到了麻烦.说我有以下HTML:

<p href="#" class="item">Text</p>
<p href="#" class="item">Text</p>
<a href="#" class="item">Link</a>
Run Code Online (Sandbox Code Playgroud)

当我尝试在下面嵌套我的样式时,我得到一个编译错误:

.item {
    color: black;
    a& {
        color:blue;
   }
}
Run Code Online (Sandbox Code Playgroud)

当父选择器是同一元素的一部分时,如何在父选择器之前引用类型选择器?

sass css-selectors

87
推荐指数
4
解决办法
4万
查看次数

在Sass中动态创建或引用变量

我正在尝试在我的变量上使用字符串插值来引用另一个变量:

// Set up variable and mixin
$foo-baz: 20px;

@mixin do-this($bar) {
    width: $foo-#{$bar};
}

// Use mixin by passing 'baz' string as a param for use $foo-baz variable in the mixin
@include do-this('baz');
Run Code Online (Sandbox Code Playgroud)

但是当我这样做时,我收到以下错误:

未定义的变量:"$ foo-".

Sass是否支持PHP风格的变量变量?

variables sass

85
推荐指数
3
解决办法
7万
查看次数

优化Font Awesome仅用于已使用的类

我使用Font Awesome Sass文件https://github.com/FortAwesome/Font-Awesome/blob/master/sass/font-awesome.sass使它成为_font-awesome.sass所以我可以@import在我的Sass项目中.我也在使用http://middlemanapp.com/Sass转换为Css.问题:

  1. 有没有办法只将已使用的图标类带入我转换后的.css?因为现在它带有_font-awesome.sass的所有类

  2. 奖励:是否可以使用已使用的图标类以某种方式重新编译字体,以使其在生产使用中更小?

如果我能得到上面#1的一些提示,那就太棒了.

谢谢.

css sass font-awesome

84
推荐指数
4
解决办法
3万
查看次数

Rails中适当的SCSS资产结构

所以,我有一个app/assets/stylesheets/看起来像这样的目录结构:

   |-dialogs
   |-mixins
   |---buttons
   |---gradients
   |---vendor_support
   |---widgets
   |-pages
   |-structure
   |-ui_elements
Run Code Online (Sandbox Code Playgroud)

在每个目录中,有多个sass partials(通常是*.css.scss,但是一个或两个*.css.scss.erb).

我可能会假设很多,但rails应该自动编译那些目录中的所有文件,因为*= require_tree .在application.css中,对吧?

我最近尝试通过删除所有颜色变量并将它们放在根app/assets/stylesheets文件夹(_colors.css.scss)中的文件中来重构这些文件.然后我在app/assets/stylesheets名为master.css.scss 的根文件夹中创建了一个文件,如下所示:

// Color Palette 
@import "colors";

// Mixins
@import "mixins/buttons/standard_button";
@import "mixins/gradients/table_header_fade";
@import "mixins/vendor_support/rounded_corners";
@import "mixins/vendor_support/rounded_corners_top";
@import "mixins/vendor_support/box_shadow";
@import "mixins/vendor_support/opacity";
Run Code Online (Sandbox Code Playgroud)

我真的不明白rails如何处理资产编译的顺序,但它显然不利于我.看来没有一个文件意识到他们有任何变量或mixins被导入,所以它抛出错误,我无法编译.

Undefined variable: "$dialog_divider_color".
  (in /home/blah/app/assets/stylesheets/dialogs/dialog.css.scss.erb)

Undefined mixin 'rounded_corners'.
  (in /home/blah/app/assets/stylesheets/widgets.css.scss)
Run Code Online (Sandbox Code Playgroud)

该变量$dialog_divider_color在_colors.css.scss中明确定义,并_master.css.scss导入颜色和我的所有mixins.但显然铁路没有获得那份备忘录.

有什么方法可以解决这些错误,还是我需要将所有变量定义放回每个单独的文件,以及所有mixin导入?

不幸的是,这家伙似乎并不认为这是可能的,但我希望他错了.任何想法都非常感谢.

css ruby-on-rails sass asset-pipeline

82
推荐指数
3
解决办法
5万
查看次数

使用SASS时如何从其他目录导入文件?

在SASS中,是否可以从另一个目录导入文件?例如,如果我有这样的结构:

- root_directory
    - sub_directory_a
        - _common.scss
        - template.scss
    - sub_directory_b
        - more_styles.scss
Run Code Online (Sandbox Code Playgroud)

template.scss可以导入_common.scss,@import "common"但是more_styles.scss可以导入_common.scss吗?我尝试了一些不同的东西,包括@import "../sub_directory_a/common"@import "../sub_directory_a/_common.scss",但似乎没有任何工作.

import sass

81
推荐指数
5
解决办法
10万
查看次数

Sass/Compass - 将Hex,RGB或命名颜色转换为RGBA

这可能是指南针101,但是有没有人写过mixin来设置颜色的alpha值?理想情况下,我希望mixin采用任何形式的颜色定义,并应用透明度:

@include set-alpha( red, 0.5 );          //prints rgba(255, 0, 0, 0.5);
@include set-alpha( #ff0000, 0.5 );      //prints rgba(255, 0, 0, 0.5);
@include set-alpha( rgb(255,0,0), 0.5 ); //prints rgba(255, 0, 0, 0.5);
Run Code Online (Sandbox Code Playgroud)

css sass rgba compass-sass

79
推荐指数
3
解决办法
5万
查看次数

如何使用node-sass(没有Ruby)将sass/scss编译或转换为css?

我正在努力设置libsass,因为它不像基于Ruby的转换器那样直截了当.有人可以解释如何:

  1. 安装libsass?
  2. 从命令行使用它?
  3. 将它与gulp和grunt等任务运行者一起使用?

我对包管理器的经验很少,对于任务运行者来说更是如此.

css sass node-sass gulp-sass libsass

78
推荐指数
4
解决办法
9万
查看次数

如何在Visual Studio 2017中编译less/sass文件

在VS <= 2015中,我们可以使用WebEssentials扩展,负责为我们编译less/sass文件,但目前它不支持VS 2017.您是否知道类似的扩展可以编译更少/ sass在构建?

sass less visual-studio css-preprocessor visual-studio-2017

76
推荐指数
4
解决办法
7万
查看次数

Sass无效的CSS错误:"预期的表达"

我刚刚关注了Sass教程.由于某种原因虽然Sass文件没有正确生成css.终端说css无效,但我很确定它不是.我已经尝试过更改它以防万一有问题...

我做错了什么?

Sass版本:Sass 3.1.10

错误信息:

error sass/test.sass (Line 3: Invalid CSS after "80%": 
expected expression (e.g. 1px, bold), was ";")
Run Code Online (Sandbox Code Playgroud)

.sass文件内容:

/* style.scss */
#navbar {
  width: 80%;
  height: 23px;
}
Run Code Online (Sandbox Code Playgroud)

css sass

75
推荐指数
2
解决办法
5万
查看次数

为什么要创建Sass缓存文件夹

我已经开始尝试使用Sass进行css工作了.在我的Css文件所在的目录中,我也看到了'.sass-cache'文件夹.任何人都可以告诉我为什么这个文件夹被创建,如果我删除它是安全的.

谢谢,

sass

75
推荐指数
2
解决办法
4万
查看次数