【问题标题】:Inherit bootstrap class with SASS in node在节点中使用 SASS 继承引导类
【发布时间】:2017-02-14 22:04:09
【问题描述】:

我想通过使用 SASS inheritanceBootstrap CSS 添加到我自己的子元素中:

nav > a {
  @extend: .nav-item;
  @extend: .nav-link;
}

我使用 Node 和 webpack 进行捆绑。我已经安装了bootstrap-sass,但我似乎无法让@import 'bootstrap' 工作。我得到的只是File to import not found or unreadable: bootstrap。 webpack代码的sass部分是:

module: {
  loaders: [
  ....,
  {
    test: /\.scss$/,
    loader: ExtractTextPlugin.extract('css!sass'),
  }],

我想这一定是我错过的一些微不足道的事情。 SASS 无法访问该库并不奇怪,但我还没有找到任何关于如何将库直接提供给 SASS 的好的提示。

【问题讨论】:

  • 此问题与css无关。
  • 我认为,您的 @extend 语法错误。查看css-tricks.com/the-extend-concept了解更多详情。
  • @DeepakYadav 认为这可能有问题。更新到替代结构,你认为这会奏效吗?如果我能走到那一步,我会很高兴......

标签: node.js twitter-bootstrap sass


【解决方案1】:

到目前为止,我确实没有您在设置和其他方面所做的事情。简单来说,如果你使用的是从 bootstrap 官网下载的 SASS 文件,你可以在自己的代码文件中使用它们的 mixins、变量和扩展代码。虽然它需要对文件进行正确的项目设置并以正确的方式导入它们。

在共享代码中,@extend 的语法似乎是错误的。我展示了一个虚拟代码 sn-p 用于演示目的。

// code already written inside Bootstrap source file.
.nav-item {
  background:red;
}
.nav-link {
  color: #fff;
}

// your code 
.nav > a {
  @extend .nav-item;
  @extend .nav-link;
}

您可以使用http://www.sassmeister.com/website 进行反复试验。

这是编译时的样子。

【讨论】:

  • 谢谢,我有一个使用 webpack 构建的节点项目。主要问题是我希望能够从 scss 调用 @import 并使用我自己的类/元素扩展引导程序。我目前已经从 cdn 加载了引导程序,但这不适用于导入,这就是我尝试使用 npm bootstrap-sass 模块的原因。
  • @MaxGordon 是的,CDN 参考不会做。您需要下载整个 SASS zip 并将其解压缩到您的源代码文件夹和 @import bootstrap.scss 文件从您的 main.scss 文件中的该文件夹中
  • 我希望 bootstrap-sass 库能以某种方式神奇地加载到 webpack 中,允许在 scss 中使用简单的@import bootstrap 而无需完整路径
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-12-14
  • 2021-11-17
  • 2016-08-14
相关资源
最近更新 更多