Ajouter Bootstrap à Jekyll

Je suis nouveau à Jekyll et je voudrais tirer dans une partie de la fonctionnalité Twitter Bootstrap. Quelqu'un a fait cela, et si oui, avez-vous des conseils? Je serais allé avec Jekyll-Bootstrap, mais il n'y a plus de support pour cela. J'ai construit mon site Jekyll et j'espère qu'il y a un moyen de tirer dans Bootstrap.

24
demandé sur amphetamachine 2015-02-26 05:25:04

2 réponses

Comme Jekyll supporte nativement sass, vous pouvez utiliser bootstrap-Sass .

Je l'installe personnellement avec la commande bower install bootstrap-sass.

Cela installe Bootstrap et Jquery dans le dossier bower_components.

Configuration

Dans votre _config.YML ajouter:

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

Si vous voulez utiliser javascript, dans votre _includes / footer.html ajouter :

<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>

Utiliser

Dans css/main.scss supprimer le contenu précédent et ajouter

---
# 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";

Vous pouvez tout voir les variables disponibles dans bower_components/bootstrap-sass/assets/stylesheets/bootstrap/_variables.scss

Vous pouvez supprimer votre ancien dossier _sass.

Maintenant votre fichier css est généré à chaque build.

37
répondu David Jacquel 2015-08-10 16:05:43

Mise à jour pour Bootstrap 4 Beta

Comme Bootstrap 4 Beta fonctionne maintenant sur Sass , Vous pouvez utiliser le paquet bower "officiel".

Voici ce que j'ai fait:

1. Installer Bootstrap en utilisant Bower

bower install bootstrap#v4.0.0-beta --save pour installer Bootstrap et ses dépendances dans le dossier bower_components.

2. Configuration

Dans _config.yml, j'ai changé le dossier Sass et exclu bower_components du traitement:

sass:
   sass_dir: assets/css

# Exclude from processing.
exclude:
  - bower_components

3. Sass

J'ai changé assets/css/main.scss comme suivant:

---
# 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) notez que la deuxième instruction import doit être relative au répertoire Sass spécifié dans _config.yml. Puisque je le choisis pour être le dossier qui contient également le main.scss, la liaison d'actif dans votre IDE préféré (par exemple WebStorm) ne se cassera pas.

(2) pour écraser les variables Bootstrap Sass, j'ai créé assets/css/_variables.scss qui doit être importé avant la bibliothèque Bootstrap.

4. Javascript

Puisque je n'ai pas trouvé un moyen d'utiliser les JS expédiés dans bower_components, j'ai choisi d'inclure les versions CDN Comme proposé par 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>
1
répondu Jonas Vogel 2017-10-15 18:02:52