Échafaudage

Bootstrap est construit sur des grilles, des mises en page et des composants réactifs à 12 colonnes.

Nécessite un type de document HTML5

Bootstrap utilise certains éléments HTML et propriétés CSS qui nécessitent l'utilisation du doctype HTML5. Incluez-le au début de tous vos projets.

  1. <!DOCTYPE html>
  2. <html lang = "fr" >
  3. ...
  4. </html>

Typographie et liens

Bootstrap définit les styles d'affichage, de typographie et de lien globaux de base. Plus précisément, nous :

  • Retirer marginsur le corps
  • Fixé background-color: white;sur lebody
  • Utilisez les attributs @baseFontFamily, @baseFontSizeet @baseLineHeightcomme base typographique
  • Définissez la couleur globale du lien via @linkColoret appliquez le soulignement du lien uniquement sur:hover

Ces styles peuvent être trouvés dans scaffolding.less .

Réinitialiser via Normaliser

Avec Bootstrap 2, l'ancien bloc de réinitialisation a été abandonné au profit de Normalize.css , un projet de Nicolas Gallagher et Jonathan Neal qui alimente également le HTML5 Boilerplate . Bien que nous utilisions une grande partie de Normalize dans notre reset.less , nous avons supprimé certains éléments spécifiquement pour Bootstrap.

Exemple de grille en direct

Le système de grille Bootstrap par défaut utilise 12 colonnes , ce qui donne un conteneur de 940 pixels de large sans fonctionnalités réactives activées. Avec le fichier CSS réactif ajouté, la grille s'adapte à 724px et 1170px de large en fonction de votre fenêtre d'affichage. Sous les fenêtres de 767 pixels, les colonnes deviennent fluides et s'empilent verticalement.

1
1
1
1
1
1
1
1
1
2
3
4
4
5
9

Grille HTML de base

Pour une mise en page simple à deux colonnes, créez un .rowet ajoutez le nombre approprié de .span*colonnes. Comme il s'agit d'une grille à 12 colonnes, chacune .span*s'étend sur un certain nombre de ces 12 colonnes et doit toujours ajouter jusqu'à 12 pour chaque ligne (ou le nombre de colonnes dans le parent).

  1. < classe div = "ligne" >
  2. <div class = "span4" > ... </div>
  3. <div class = "span8" > ... </div>
  4. </div>

Dans cet exemple, nous avons .span4et .span8, soit 12 colonnes au total et une ligne complète.

Colonnes de décalage

Déplacez les colonnes vers la droite à l'aide des .offset*classes. Chaque classe augmente la marge gauche d'une colonne d'une colonne entière. Par exemple, .offset4se déplace .span4sur quatre colonnes.

4
3 décalage 2
3 décalage 1
3 décalage 2
6 décalage 3
  1. < classe div = "ligne" >
  2. <div class = "span4" > ... </div>
  3. <div class = "span3 offset2" > ... </div>
  4. </div>

Colonnes imbriquées

Pour imbriquer votre contenu avec la grille par défaut, ajoutez un nouveau .rowet un ensemble de colonnes dans une colonne .span*existante . .span*Les lignes imbriquées doivent inclure un ensemble de colonnes qui totalisent le nombre de colonnes de son parent.

Colonne de niveau 1
Niveau 2
Niveau 2
  1. < classe div = "ligne" >
  2. < classe div = "span9" >
  3. Colonne de niveau 1
  4. < classe div = "ligne" >
  5. <div class = "span6" > Niveau 2 </div>
  6. <div class = "span3" > Niveau 2 </div>
  7. </div>
  8. </div>
  9. </div>

Exemple de grille fluide en direct

Le système de grille fluide utilise des pourcentages au lieu de pixels pour les largeurs de colonne. Il a les mêmes capacités réactives que notre système de grille fixe, garantissant des proportions appropriées pour les résolutions d'écran et les appareils clés.

1
1
1
1
1
1
1
1
1
1
1
1
4
4
4
4
8
6
6
12

Grille fluide de base HTML

Rendez n'importe quelle ligne "fluide" en changeant .rowen .row-fluid. Les classes de colonnes restent exactement les mêmes, ce qui facilite le basculement entre les grilles fixes et fluides.

  1. <div class = "row-fluide" >
  2. <div class="span4">...</div>
  3. <div class="span8">...</div>
  4. </div>

Fluid offsetting

Operates the same way as the fixed grid system offsetting: add .offset* to any column to offset by that many columns.

4
4 offset 4
3 offset 3
3 offset 3
6 offset 6
  1. <div class="row-fluid">
  2. <div class="span4">...</div>
  3. <div class="span4 offset2">...</div>
  4. </div>

Fluid nesting

Fluid grids utilize nesting differently: each nested level of columns should add up to 12 columns. This is because the fluid grid uses percentages, not pixels, for setting widths.

Fluid 12
Fluid 6
Fluid 6
Fluid 6
Fluid 6
  1. <div class="row-fluid">
  2. <div class="span12">
  3. Fluid 12
  4. <div class="row-fluid">
  5. <div class="span6">
  6. Fluid 6
  7. <div class="row-fluid">
  8. <div class="span6">Fluid 6</div>
  9. <div class="span6">Fluid 6</div>
  10. </div>
  11. </div>
  12. <div class="span6">Fluid 6</div>
  13. </div>
  14. </div>
  15. </div>

Fixed layout

Provides a common fixed-width (and optionally responsive) layout with only <div class="container"> required.

  1. <body>
  2. <div class="container">
  3. ...
  4. </div>
  5. </body>

Fluid layout

Create a fluid, two-column page with <div class="container-fluid">—great for applications and docs.

  1. <div class="container-fluid">
  2. <div class="row-fluid">
  3. <div class="span2">
  4. <!--Sidebar content-->
  5. </div>
  6. <div class="span10">
  7. <!--Body content-->
  8. </div>
  9. </div>
  10. </div>

Enabling responsive features

Turn on responsive CSS in your project by including the proper meta tag and additional stylesheet within the <head> of your document. If you've compiled Bootstrap from the Customize page, you need only include the meta tag.

  1. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  2. <link href="assets/css/bootstrap-responsive.css" rel="stylesheet">

Heads up! Bootstrap doesn't include responsive features by default at this time as not everything needs to be responsive. Instead of encouraging developers to remove this feature, we figure it best to enable it as needed.

About responsive Bootstrap

Appareils réactifs

Media queries allow for custom CSS based on a number of conditions—ratios, widths, display type, etc—but usually focuses around min-width and max-width.

  • Modify the width of column in our grid
  • Stack elements instead of float wherever necessary
  • Resize headings and text to be more appropriate for devices

Use media queries responsibly and only as a start to your mobile audiences. For larger projects, do consider dedicated code bases and not layers of media queries.

Supported devices

Bootstrap supports a handful of media queries in a single file to help make your projects more appropriate on different devices and screen resolutions. Here's what's included:

Label Layout width Column width Gutter width
Large display 1200px and up 70px 30px
Default 980px and up 60px 20px
Portrait tablets 768px and above 42px 20px
Phones to tablets 767px and below Fluid columns, no fixed widths
Phones 480px and below Fluid columns, no fixed widths
  1. /* Large desktop */
  2. @media (min-width: 1200px) { ... }
  3.  
  4. /* Portrait tablet to landscape and desktop */
  5. @media (min-width: 768px) and (max-width: 979px) { ... }
  6.  
  7. /* Landscape phone to portrait tablet */
  8. @media (max-width: 767px) { ... }
  9.  
  10. /* Landscape phones and down */
  11. @media (max-width: 480px) { ... }

Responsive utility classes

For faster mobile-friendly development, use these utility classes for showing and hiding content by device. Below is a table of the available classes and their effect on a given media query layout (labeled by device). They can be found in responsive.less.

Class Phones 767px and below Tablets 979px to 768px Desktops Default
.visible-phone Visible
.visible-tablet Visible
.visible-desktop Visible
.hidden-phone Visible Visible
.hidden-tablet Visible Visible
.hidden-desktop Visible Visible

When to use

Use on a limited basis and avoid creating entirely different versions of the same site. Instead, use them to complement each device's presentation. Responsive utilities should not be used with tables, and as such are not supported.

Responsive utilities test case

Redimensionnez votre navigateur ou chargez-le sur différents appareils pour tester les classes ci-dessus.

Visible sur...

Les coches vertes indiquent que la classe est visible dans votre fenêtre actuelle.

  • Téléphoner✔ Téléphone
  • Tablette✔ Tablette
  • Bureau✔ Bureau

Caché sur...

Ici, les coches vertes indiquent que la classe est masquée dans votre fenêtre actuelle.

  • Téléphoner✔ Téléphone
  • Tablette✔ Tablette
  • Bureau✔ Bureau