我是Jekyll的新手,想要引入一些Twitter Bootstrap功能。有没有人这样做过,如果有的话,你有什么建议吗?我会选择Jekyll-Bootstrap,但不再支持它了。我已经建立了我的Jekyll网站,我希望有一种方法可以引入Bootstrap。
答案 0 :(得分:38)
由于Jekyll本身支持sass,您可以使用bootstrap-sass。
我个人使用bower install bootstrap-sass
命令安装它。
这会在bower_components
文件夹中安装Bootstrap和Jquery。
在_config.yml中添加:
sass:
# loading path from site root
# default to _sass
sass_dir: bower_components/bootstrap-sass/assets/stylesheets
# style : nested (default), compact, compressed, expanded
# :nested, :compact, :compressed, :expanded also works
# see http://sass-lang.com/documentation/file.SASS_REFERENCE.html#output_style
# on a typical twitter bootstrap stats are :
# nested 138,7kB, compact 129,1kB, expanded 135,9 kB, compressed 122,4 kB
style: compressed
如果您想使用javascript,请在_includes / footer.html中添加:
<script src="{{ site.baseurl }}/bower_components/jquery/dist/jquery.min.js"></script>
<script src="{{ site.baseurl }}/bower_components/bootstrap-sass/assets/javascripts/bootstrap.min.js"></script>
在css/main.scss
中删除以前的内容并添加
---
# Only the main Sass file needs front matter (the dashes are enough)
---
@charset "utf-8";
/* path to glyphicons */
$icon-font-path: "/bower_components/bootstrap-sass/assets/fonts/bootstrap/";
/* custom variable */
$body-bg: red;
/* any style customization must be before the bootstrap import */
@import "bootstrap";
您可以在bower_components/bootstrap-sass/assets/stylesheets/bootstrap/_variables.scss
您可以删除旧的_sass文件夹。
现在你的css文件是在每次构建时生成的。
答案 1 :(得分:1)
As Bootstrap 4 Beta now runs on Sass,您可以使用“官方”凉亭套餐。
这就是我的所作所为:
bower install bootstrap#v4.0.0-beta --save
将Bootstrap及其依赖项安装到bower_components
文件夹。
在_config.yml
中,我更改了Sass文件夹并将bower_components
排除在处理之外:
sass:
sass_dir: assets/css
# Exclude from processing.
exclude:
- bower_components
我更改了assets/css/main.scss
如下:
---
# Only the main Sass file needs front matter (the dashes are enough)
---
@charset "utf-8";
@import "variables"; // (2)
@import "../../bower_components/bootstrap/scss/bootstrap"; // (1)
// Import other styling below
// ...
(1)请注意,第二个import语句必须相对于_config.yml
中指定的Sass目录。由于我选择它也是包含main.scss
的文件夹,因此在您喜欢的IDE(例如WebStorm)中链接的资产不会中断。
(2)要覆盖Bootstrap Sass变量,我创建了assets/css/_variables.scss
,必须在Bootstrap库之前导入。
由于我没有找到使用JS发送到bower_components
的方法,我选择包含CDN版本as proposed by Bootstrap:
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js" integrity="sha384-b/U6ypiBEHpOf/4+1nzFpr53nxSS+GLCkfwBdFNTxtclqqenISfwAzpKaMNFNmj4" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/js/bootstrap.min.js" integrity="sha384-h0AbiXch4ZDo7tp9hKZ4TsHbi047NrKGLO3SEJAg45jXxnGIfYzk4Si90RDIqNm1" crossorigin="anonymous"></script>
答案 2 :(得分:1)
Bootstrap 4.3.1和Jekyll 4.0的更新
您可以使用bunder将BS安装到您的网站中
bundle install bootstrap
将其添加到gem文件:
gem 'bootstrap', '~> 4.3.1'
获取BS的路径
bundle info bootstrap
将该路径添加到_config.yml
sass:
load_paths:
- _sass
- C:/Ruby26-x64/lib/ruby/gems/2.6.0/gems/bootstrap-4.3.1/assets/stylesheets
也可以添加相对路径。
最后,将引导程序添加到style.scss
@import "bootstrap";