Bootstrap, de Twitter

Bootstrap est une boîte à outils de Twitter conçue pour lancer le développement d'applications Web et de sites.
Il inclut le CSS et le HTML de base pour la typographie, les formulaires, les boutons, les tableaux, les grilles, la navigation, etc.

Nerd alert : Bootstrap est construit avec Less et a été conçu pour fonctionner dès le départ avec les navigateurs modernes à l'esprit.

Relier le CSS

Pour un démarrage plus rapide et plus facile, copiez simplement cet extrait dans votre page Web.

Utilisez-le avec moins

Un fan d'utiliser Less ? Pas de problème, clonez simplement le dépôt et ajoutez ces lignes :

Fork sur GitHub

Téléchargez, bifurquez, extrayez, problèmes de fichiers, et plus encore avec le dépôt Bootstrap officiel sur Github.

Bootstrap sur GitHub »

Histoire

Aux premiers jours de Twitter, les ingénieurs utilisaient presque toutes les bibliothèques qu'ils connaissaient pour répondre aux exigences du front-end. Bootstrap a commencé comme une réponse aux défis qui se présentaient et le développement s'est rapidement accéléré lors de la première Hackweek de Twitter.

Avec l'aide et les commentaires de nombreux ingénieurs de Twitter, Bootstrap s'est considérablement développé pour englober non seulement des styles de base, mais aussi des modèles de conception frontaux plus élégants et durables.

En savoir plus sur dev.twitter.com ›

Prise en charge du navigateur

Bootstrap est testé et pris en charge dans les principaux navigateurs modernes tels que Chrome, Safari, Internet Explorer et Firefox.

Testé et pris en charge dans Chrome, Safari, Internet Explorer et Firefox
  • Dernier Safari
  • Dernier Google Chrome
  • Firefox 4+
  • Internet Explorer 7+
  • Opéra 11

Ce qui est inclu

Bootstrap est livré avec des modèles CSS compilés, non compilés et des exemples.

  • Tous les fichiers originaux .less
  • CSS entièrement compilé et minifié
  • Documentation complète du guide de style
  • Exemple de modèle de page (plus à venir bientôt)

Grille par défaut

Le système de grille par défaut fourni dans le cadre de Bootstrap est une grille de 16 colonnes de 940 pixels de large. C'est une saveur du système de grille populaire 960, mais sans la marge / rembourrage supplémentaire sur les côtés gauche et droit.

Exemple de balisage de grille

Comme illustré ici, une mise en page de base peut être créée avec deux "colonnes", chacune couvrant un certain nombre des 16 colonnes fondamentales que nous avons définies dans le cadre de notre système de grille. Voir les exemples ci-dessous pour plus de variantes.

  1. < classe div = "ligne" >
  2. <div class = "colonnes span6" >
  3. ...
  4. </div>
  5. <div class = "colonnes span10" >
  6. ...
  7. </div>
  8. </div>
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
3
3
3
3
3
1
4
4
4
4
4
6
6
8
8
5
11
16

Colonnes de décalage

4
8 décalage 4
4 décalage 4
4 décalage 4
5 décalage 3
5 décalage 3
10 décalage 6

Disposition fixe

La mise en page centrée par défaut et simple de 940 pixels de large pour à peu près n'importe quel site Web ou page fourni par un seul fichier <div.container>.

  1. <corps>
  2. < classe div = "conteneur" >
  3. ...
  4. </div>
  5. </body>

Aménagement fluide

Une structure de page fluide alternative et flexible avec des largeurs min et max et une barre latérale gauche. Idéal pour les applications et les documents.

  1. <corps>
  2. <div class = "conteneur-fluide" >
  3. < classe div = "barre latérale" >
  4. ...
  5. </div>
  6. < classe div = "contenu" >
  7. ...
  8. </div>
  9. </div>
  10. </body>

Titres et copie

Une hiérarchie typographique standard pour structurer vos pages Web.

Toute la grille typographique est basée sur deux variables Less de notre fichier preboot.less : @basefontet @baseline. Le premier est la taille de police de base utilisée partout et le second est la hauteur de ligne de base.

Nous utilisons ces variables et quelques calculs pour créer les marges, les rembourrages et les hauteurs de ligne de tous nos types et plus encore.

h1. Rubrique 1

h2. Rubrique 2

h3. Rubrique 3

h4. Rubrique 4

h5. Rubrique 5
h6. Rubrique 6

Exemple de paragraphe

Nullam quis risus eget urna mollis ornare vel eu leo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nullam id dolor id nibh ultricies vehicula ut id elit.

Exemple de titre Contient un sous-titre…

Divers éléments

Emphase, adresses et abréviations

<strong> <em> <address> <abbr>

Quand utiliser

Les balises d'emphase ( <strong>et <em>) doivent être utilisées pour indiquer l'importance supplémentaire ou l'emphase d'un mot ou d'une phrase par rapport à sa copie environnante. Utilisez <strong>pour l'importance et <em>pour l'accent mis sur le stress .

Mise en évidence dans un paragraphe

Fusce dapibus , tellus ac cursus commodo , tortor mauris condimentum nibh , ut fermentum massa justo sit amet risus. Mécène faucibus mollis interdum. Nulla vitae elit libero, a pharetra augue.

Remarque : Vous pouvez toujours utiliser les balises <b>et <i>dans HTML5 et elles ne doivent pas nécessairement être en gras et en italique, respectivement (bien que s'il existe un élément plus sémantique, utilisez-le). <b>est destiné à mettre en évidence des mots ou des phrases sans donner d'importance supplémentaire, tandis qu'il <i>est principalement destiné à la voix, aux termes techniques, etc.

Adresses

L' <address>élément est utilisé pour les informations de contact de son ancêtre le plus proche ou de l'ensemble de l'œuvre. Voici à quoi ça ressemble :

Twitter, Inc.
795 Folsom Ave, Suite 600
San Francisco, CA 94107 Téléphone
: (123) 456-7890

Remarque : Chaque ligne d'un <address>doit se terminer par un saut de ligne ( <br />) ou être enveloppée dans une balise de niveau bloc (par exemple, <p>) pour structurer correctement le contenu.

Abréviations

Pour les abréviations et les acronymes, utilisez la <abbr>balise ( <acronym>est obsolète en HTML5 ). Mettez la forme abrégée dans la balise et définissez un titre pour le nom complet.

Citations en bloc

<blockquote> <p> <small>

Comment citer

Pour inclure un blockquote, wrap <blockquote>around <p>et <small>tags. Utilisez l' <small>élément pour citer votre source et vous obtiendrez un tiret em &mdash;avant.

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante venenatis dapibus posuere velit aliquet.

Dr Julius Hibbert

Listes

Non ordonné<ul>

  • Lorem ipsum dolor sit amet
  • Consectetur adipiscing élite
  • Integer molestie lorem at massa
  • Facilisis in pretium nisl aliquet
  • Nulla volutpat aliquam velit
    • Phasellus iaculis neque
    • Purus sodales ultricies
    • Vestibulum laoreet porttitor sem
    • Ac tristique libero volutpat at
  • Faucibus porta lacus fringilla vel
  • Aenean sit amet erat nunc
  • Eget porttitor lorem

Sans style<ul.unstyled>

  • Lorem ipsum dolor sit amet
  • Consectetur adipiscing élite
  • Integer molestie lorem at massa
  • Facilisis in pretium nisl aliquet
  • Nulla volutpat aliquam velit
    • Phasellus iaculis neque
    • Purus sodales ultricies
    • Vestibulum laoreet porttitor sem
    • Ac tristique libero volutpat at
  • Faucibus porta lacus fringilla vel
  • Aenean sit amet erat nunc
  • Eget porttitor lorem

Commandé<ol>

  1. Lorem ipsum dolor sit amet
  2. Consectetur adipiscing élite
  3. Integer molestie lorem at massa
  4. Facilisis in pretium nisl aliquet
  5. Nulla volutpat aliquam velit
  6. Faucibus porta lacus fringilla vel
  7. Aenean sit amet erat nunc
  8. Eget porttitor lorem

La descriptiondl

Listes de descriptions
Une liste de description est parfaite pour définir les termes.
Euismod
Vestibulum id ligula porta felis euismod semper eget lacinia odio sem nec elit.
Donec id elit non mi porta gravida et eget metus.
Porte Malesuada
Etiam porta sem malesuada magna mollis euismod.

Construire des tableaux

<table> <thead> <tbody> <tr> <th> <td> <colspan> <caption>

Les tables sont parfaites pour beaucoup de choses. Les grands tableaux, cependant, ont besoin d'un peu d'amour pour le balisage pour être utiles, évolutifs et lisibles (au niveau du code). Voici quelques conseils pour vous aider.

Enveloppez toujours vos en-têtes de colonne dans une <thead>hiérarchie telle que <thead>> <tr>> <th>.

Semblable aux en-têtes de colonne, tout le contenu du corps de votre tableau doit être enveloppé dans un <tbody>afin que votre hiérarchie soit <tbody>> <tr>> <td>.

Exemple : Styles de tableau par défaut

Tous les tableaux seront automatiquement stylisés avec uniquement les bordures essentielles pour assurer la lisibilité et maintenir la structure. Pas besoin d'ajouter des classes ou des attributs supplémentaires.

# Prénom Nom de famille Langue
1 Quelques Une Anglais
2 Jo Pack de six Anglais
3 Stu Bosse Code
  1. <tableau>
  2. ...
  3. </table>

Exemple : zébré

Obtenez un peu de fantaisie avec vos tables en ajoutant des rayures zébrées - ajoutez simplement la .zebra-stripedclasse.

# Prénom Nom de famille Langue
1 Quelques Une Anglais
2 Jo Pack de six Anglais
3 Stu Bosse Code

Remarque : Zebra-striping est une amélioration progressive non disponible pour les navigateurs plus anciens comme IE8 et inférieurs.

  1. <table class = "zébré" >
  2. ...
  3. </table>

Exemple : Zebra-striped avec TableSorter.js

En reprenant l'exemple précédent, nous améliorons l'utilité de nos tables en fournissant une fonctionnalité de tri via jQuery et le plugin Tablesorter . Cliquez sur l'en-tête de n'importe quelle colonne pour modifier le tri.

# Prénom Nom de famille Langue
1 Ton Une Anglais
2 Jo Pack de six Anglais
3 Stu Bosse Code
  1. <script src = "js/jquery/jquery.tablesorter.min.js" ></script>
  2. <script >
  3. $ ( fonction () {
  4. $ ( "table#sortTableExemple" ). tablesorter ({ sortList : [[ 1 , 0 ]] });
  5. });
  6. </script>
  7. <table class = "zébré" >
  8. ...
  9. </table>

Styles par défaut

Tous les formulaires reçoivent des styles par défaut pour les présenter de manière lisible et évolutive. Des styles sont fournis pour les entrées de texte, les listes de sélection, les zones de texte, les boutons radio et les cases à cocher, et les boutons.

Exemple de légende de formulaire
Une certaine valeur ici
Petit extrait du texte d'aide
Exemple de légende de formulaire
@
Exemple de légende de formulaire
Remarque : les étiquettes entourent toutes les options pour des zones de clic beaucoup plus grandes et une forme plus utilisable.
à Toutes les heures sont indiquées en heure normale du Pacifique (GMT -08:00).
Bloc de texte d'aide pour décrire le champ ci-dessus si nécessaire.
 

Formulaires empilés

Ajoutez .form-stackedau code HTML de votre formulaire et vous aurez des étiquettes au-dessus de leurs champs plutôt qu'à leur gauche. Cela fonctionne très bien si vos formulaires sont courts ou si vous avez deux colonnes d'entrées pour des formulaires plus lourds.

Exemple de légende de formulaire
Exemple de légende de formulaire
Petit extrait du texte d'aide
Remarque : les étiquettes entourent toutes les options pour des zones de clic beaucoup plus grandes et une forme plus utilisable.
 

Boutons

Par convention, les boutons sont utilisés pour les actions tandis que les liens sont utilisés pour les objets. Par exemple, « Télécharger » pourrait être un bouton et « Activité récente » pourrait être un lien.

Tous les boutons ont par défaut un style gris clair, mais un certain nombre de classes fonctionnelles peuvent être appliquées pour différents styles de couleur. Ces classes comprennent une .primaryclasse bleue, une .infoclasse bleu clair, une classe verte .successet une classe rouge .danger. De plus, rouler vos propres styles est facile.

Exemples de boutons

Les styles de bouton peuvent être appliqués à tout ce qui .btnest appliqué. En règle générale, vous souhaiterez les appliquer uniquement aux éléments <a>, <button>et select <input>. Voici à quoi ça ressemble :

Tailles alternatives

Envie de boutons plus grands ou plus petits ? Ayez-y!

État désactivé

Pour les boutons qui ne sont pas actifs ou qui sont désactivés par l'application pour une raison ou une autre, utilisez l'état désactivé. C'est .disabledpour les liens et :disabledpour les <button>éléments.

Liens

Boutons

 

Alertes de base

div.alert-message

Messages d'une ligne pour mettre en évidence l'échec, l'échec possible ou le succès d'une action. Particulièrement utile pour les formulaires.

×

Sacré gaucamole ! Tu ferais mieux de vérifier toi-même, tu n'as pas l'air trop bien.

×

Oh claquement ! Changez ceci et cela et réessayez.

×

Bien fait! Vous avez lu avec succès ce message d'alerte.

×

La tête haute! Il s'agit d'une alerte qui nécessite votre attention, mais ce n'est pas encore une grande priorité.

Bloquer les messages

div.alert-message.block-message

Pour les messages qui nécessitent un peu d'explication, nous avons des alertes de style paragraphe. Ceux-ci sont parfaits pour générer des messages d'erreur plus longs, avertir un utilisateur d'une action en attente ou simplement présenter des informations pour mettre davantage l'accent sur la page.

×

Sacré gaucamole ! C'est un avertissement ! Tu ferais mieux de vérifier toi-même, tu n'as pas l'air trop bien. Nulla vitae elit libero, a pharetra augue. Praesent commodo cursus magna, vel scelerisque nisl consectetur et.

×

Oh claquement ! Vous avez une erreur ! Changez ceci et cela et réessayez. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Cras mattis consectetur purus sit amet fermentum.

×

Bien fait! Vous avez lu avec succès ce message d'alerte. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Mécène faucibus mollis interdum.

×

La tête haute! Il s'agit d'une alerte qui nécessite votre attention, mais ce n'est pas encore une grande priorité.

Modaux

Les modaux (boîtes de dialogue ou lightboxes) sont parfaits pour les actions contextuelles dans les situations où il est important que le contexte d'arrière-plan soit conservé.

Info-bulles

Les Twipsies sont super utiles pour aider un utilisateur confus et le diriger dans la bonne direction.

Lorem ipsum dolar sit amet illo error ipsum veritatis aut iste perspiciatis iste voluptas natus illo quasi odit aut natus consequuntur consequuntur, aut natus illo voluptatem odit perspiciatis laudantium rem doloremque totam voluptas. Voluptasdicta eaque beatae aperiam ut enim voluptatem explicabo explicabo, voluptas quia odit fugit accusantium totam totam architecto explicabo sit quasi fugit fugit, totam doloremque unde sunt sed dicta quae accusantium fugit voluptas nemo voluptas voluptatem rem quae aut veritatis quasi quae.

dessous!
droit!
la gauche!
au dessus!

popovers

Utilisez les popovers pour fournir des informations sous-textuelles à une page sans affecter la mise en page.

Titre contextuel

Etiam porta sem malesuada magna mollis euismod. Mécène faucibus mollis interdum. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.

Bootstrap a été construit avec Preboot , un pack open source de mixins et de variables à utiliser conjointement avec Less , un préprocesseur CSS pour un développement Web plus rapide et plus facile.

Découvrez comment nous avons utilisé Preboot dans Bootstrap et comment vous pouvez l'utiliser si vous choisissez d'exécuter Less sur votre prochain projet.

Comment l'utiliser

Utilisez cette option pour tirer pleinement parti des variables Less de Bootstrap, des mixins et de l'imbrication dans CSS via javascript dans votre navigateur.

  1. <link rel = "stylesheet/less" href = "less/bootstrap.less" media = "all" />
  2. <script src = "js/less-1.1.3.min.js" ></script>

Vous ne ressentez pas la solution .js ? Essayez l'application Less Mac ou utilisez Node.js pour compiler lorsque vous déployez votre code.

Ce qui est inclu

Voici quelques-uns des points forts de ce qui est inclus dans Twitter Bootstrap dans le cadre de Bootstrap. Rendez-vous sur le site Web Bootstrap ou sur la page du projet Github pour télécharger et en savoir plus.

variables

Les variables dans Less sont parfaites pour maintenir et mettre à jour votre CSS sans maux de tête. Lorsque vous souhaitez modifier une valeur de couleur ou une valeur fréquemment utilisée, mettez-la à jour en un seul endroit et vous êtes prêt.

  1. // Liens
  2. @linkColor : #8b59c2;
  3. @linkColorHover : assombrir ( @linkColor , 10 );
  4.  
  5. // Gris
  6. @noir : #000;
  7. @grayDark : éclaircit ( @black , 25 %) ;
  8. @gray : éclaircit ( @black , 50 %) ;
  9. @grayLight : éclaircit ( @black , 70 %) ;
  10. @grayLighter : éclaircit ( @black , 90 %) ;
  11. @white : #fff;
  12.  
  13. // Couleurs d'accentuation
  14. @bleu : #08b5fb;
  15. @vert : #46a546;
  16. @red : #9d261d;
  17. @jaune : #ffc40d;
  18. @orange : #f89406;
  19. @rose : #c3325f;
  20. @violet : #7a43b6;
  21.  
  22. // Grille de base
  23. @basefont : 13px ;
  24. @baseline : 18px ;

Commentant

Less fournit également un autre style de commentaire en plus de la /* ... */syntaxe normale de CSS.

  1. // Ceci est un commentaire
  2. /* Ceci est aussi un commentaire */

Mélange le wazoo

Les mixins sont essentiellement des inclusions ou des partiels pour CSS, vous permettant de combiner un bloc de code en un seul. Ils sont parfaits pour les propriétés préfixées par le fournisseur telles que box-shadow, les dégradés entre navigateurs, les piles de polices, etc. Vous trouverez ci-dessous un échantillon des mixins inclus avec Bootstrap.

Piles de polices

  1. #Police de caractère {
  2. . raccourci ( @weight : normal , @size : 14px , @lineHeight : 20px ) {
  3. taille de police : @size ;
  4. font - weight : @weight ;
  5. hauteur de ligne : @lineHeight ;
  6. }
  7. . sans - serif ( @weight : normal , @size : 14px , @lineHeight : 20px ) {
  8. famille de polices : " Helvetica Neue" , ​​Helvetica , Arial , sans - serif ;
  9. taille de police : @size ;
  10. font - weight : @weight ;
  11. hauteur de ligne : @lineHeight ;
  12. }
  13. . serif ( @weight : normal , @size : 14px , @lineHeight : 20px ) {
  14. famille de polices : " Georgia" , Times New Roman , Times , sans - serif ;
  15. taille de police : @size ;
  16. font - weight : @weight ;
  17. hauteur de ligne : @lineHeight ;
  18. }
  19. . monospace ( @weight : normal , @size : 12px , @lineHeight : 20px ) {
  20. famille de polices : " Monaco" , Courier New , monospace ;
  21. taille de police : @size ;
  22. font - weight : @weight ;
  23. hauteur de ligne : @lineHeight ;
  24. }
  25. }

Dégradés

  1. #pente {
  2. . horizontale ( @startColor : #555, @endColor : #333) {
  3. fond - couleur : @endColor ;
  4. arrière -plan - répéter : répéter - x ;
  5. background - image : - khtml - gradient ( linear , left top , right top , from ( @startColor ), to ( @endColor )); // Konqueror
  6. background - image : - moz - linear - gradient ( left , @startColor , @endColor ); //FF 3.6+
  7. background - image : - ms - linear - gradient ( left , @startColor , @endColor ); // IE10
  8. background - image : - webkit - gradient ( linear , left top , right top , color - stop ( 0 %, @startColor ), color - stop ( 100 %, @endColor )); // Safari 4+, Chrome 2+
  9. background - image : - webkit - linear - gradient ( left , @startColor , @endColor ); //Safari 5.1+, Chrome 10+
  10. background - image : - o - linear - gradient ( left , @startColor , @endColor ); // Opéra 11.10
  11. background - image : linear - gradient ( left , @startColor , @endColor ); // La norme
  12. }
  13. . verticale ( @startColor : #555, @endColor : #333) {
  14. fond - couleur : @endColor ;
  15. arrière -plan - répéter : répéter - x ;
  16. background - image : - khtml - gradient ( linear , left top , left bottom , from ( @startColor ), to ( @endColor )); // Konqueror
  17. background - image : - moz - linear - gradient ( @startColor , @endColor ); //FF 3.6+
  18. background - image : - ms - linear - gradient ( @startColor , @endColor ); // IE10
  19. background - image : - webkit - gradient ( linear , left top , left bottom , color - stop ( 0 %, @startColor ), color - stop ( 100 %, @endColor )); // Safari 4+, Chrome 2+
  20. background - image : - webkit - linear - gradient ( @startColor , @endColor ); //Safari 5.1+, Chrome 10+
  21. background - image : - o - linear - gradient ( @startColor , @endColor ); // Opéra 11.10
  22. background - image : linear - gradient ( @startColor , @endColor ); // Le standard
  23. }
  24. . directionnelle ( @startColor : #555, @endColor : #333, @deg : 45deg) {
  25. ...
  26. }
  27. . vertical - trois - couleurs ( @startColor : #00b3ee, @midColor : #7a43b6, @colorStop : 50%, @endColor : #c3325f) {
  28. ...
  29. }
  30. }

Opérations et système de réseau

Soyez fantaisiste et effectuez des calculs pour générer des mixins flexibles et puissants comme celui ci-dessous.

  1. // Griditude
  2. @gridColumns : 16 ;
  3. @gridColumnWidth : 40px ;
  4. @gridGutterLargeur : 20px ;
  5. @siteWidth : ( @gridColumns * @gridColumnWidth ) + ( @gridGutterWidth * ( @gridColumns - 1 ));
  6.  
  7. // Système de grille
  8. . conteneur {
  9. largeur : @siteWidth ;
  10. marge : 0 auto ;
  11. . clearfix ();
  12. }
  13. . colonnes ( @columnSpan : 1 ) {
  14. largeur : ( @gridColumnWidth * @columnSpan ) + ( @gridGutterWidth * ( @columnSpan - 1 ));
  15. }
  16. . décalage ( @columnOffset : 1 ) {
  17. marge - gauche : ( @gridColumnWidth * @columnOffset ) + ( @gridGutterWidth * ( @columnOffset - 1 )) + @extraSpace ;
  18. }