Frameworks 使用bourbon纯网格的断点

Frameworks 使用bourbon纯网格的断点,frameworks,sass,media-queries,mixins,bourbon,Frameworks,Sass,Media Queries,Mixins,Bourbon,我正在尝试使用neat来制作波旁威士忌,我已经把大部分事情都整理好了,但在创造突破点时,我遇到了一些障碍 我更喜欢为手机、平板电脑、桌面和大型桌面制作单独的sass文件,我通常不使用冒泡来创建我的媒体查询,因为我不喜欢它不只是创建一个媒体查询,而是通过css文件制作色调。但到目前为止,我似乎只能找到关于冒泡方法的文档 以下是我所做的: $largedesktop-size:em(1050); // Bourbon Neat Breakpoints $largedesktop:

我正在尝试使用neat来制作波旁威士忌,我已经把大部分事情都整理好了,但在创造突破点时,我遇到了一些障碍

我更喜欢为手机、平板电脑、桌面和大型桌面制作单独的sass文件,我通常不使用冒泡来创建我的媒体查询,因为我不喜欢它不只是创建一个媒体查询,而是通过css文件制作色调。但到目前为止,我似乎只能找到关于冒泡方法的文档

以下是我所做的:

$largedesktop-size:em(1050);

    // Bourbon Neat Breakpoints
    $largedesktop: new-breakpoint(min-width $largedesktop-size 16);


 @include media($largedesktop) { 
    body{
        background:black;
    }
  }
我也尝试过这种方法,它会更新背景颜色,但不会更新视觉网格:

// Media Queries Breakpoints
$tablet-size:em(700);

@include media(min-width $tablet-size 8) {
    body{
        background:orange;
    }
  }

实际上我已经解决了这个问题,我的主要问题是如何组织我的.scss文件,但这里是如何组织的

文件结构如下:

@import 'bourbon/bourbon';
@import 'variables';
@import 'neat/neat';

@import 'base';

// Media Queries
@import 'mobile';
@import 'tablet';
@import 'desktop';
@import 'largedesktop';
在导入变量之前,必须先删除变量

在_variables.scs中添加如下查询:

$mobile-size:em(320);
$tablet-size:720px;
$desktop-size:em(960);
$largedesktop-size:em(1050);

// Bourbon Neat Breakpoints
$mobile: new-breakpoint(min-width $mobile-size 4);
$tablet: new-breakpoint(min-width $tablet-size 8);
$desktop: new-breakpoint(min-width $desktop-size 12);
$largedesktop: new-breakpoint(min-width $largedesktop-size 16);
然后(这就是我喜欢组织事情的方式)为移动设备、平板电脑、桌面和大型桌面创建一个scss文件,并在_base.scss之后导入–我在上面演示了文件的结构

在每个页面中添加媒体查询以及所需的布局更改

像这样: _mobile.scss

@include media($mobile) {
    body {
        background: purple;
    }
}
那应该对你有用


正如我所说,我是这样做的,我相信还有很多其他的问题,但我想让人们知道一种方法,如果他们有问题:)

我在断点和更新网格方面也有类似的问题。但轨道略有不同

这就是帮助我的原因。这不在计划之内

在Neat上,thoughtbot团队解释道:

  • 您需要创建一个_grid-settings.scss文件
  • 在导入之前导入它

    @import "bourbon/bourbon"; // or "bourbon" when in Rails
    @import "grid-settings";
    @import "neat/neat"; // or "neat" when in Rails
    
  • 在_grid-settings.scss文件中,导入整洁的帮助程序

    @import "neat/neat-helpers"; // or "neat-helpers" when in Rails
    
    // Define your breakpoints
    $tablet: new-breakpoint(max-width 768px 8);
    $mobile: new-breakpoint(max-width 480px 4);
    etc
    
  • 在添加此设置之前,我可以看到网格,但网格不会响应我更新列或更改组件位置的断点请求。一旦我有了这些设置,网格就如我所期望的那样工作了


    如果有必要的话,我正在使用代码工具包2

    无论它与谁有关,我的问题不是我的导入顺序错误,而是我如何使用变量。我以为函数需要一个字符串

    这是错误的:

    $desktop: 1200px
    $tablet: new-breakpoint(min-width 600px max-width #{$desktop})
    
    这是正确的:

    $desktop: 1200px
    $tablet: new-breakpoint(min-width 600px max-width $desktop)
    

    你能解决我的问题吗这里是链接当然这应该是公认的答案-整洁的助手文件是非常重要的