Etiam porta sem malesuada magna mollis euismod. Mecenate faucibus mollis interdum. Morbi leo risus, porta ac consectetur ac, vestibolo a eros.
Bootstrap è un toolkit di Twitter progettato per avviare lo sviluppo di webapp e siti.
Include CSS e HTML di base per tipografia, moduli, pulsanti, tabelle, griglie, navigazione e altro.
Avviso nerd: Bootstrap è costruito con Less ed è stato progettato per funzionare immediatamente tenendo conto dei browser moderni.
Per un inizio più rapido e semplice, copia questo snippet nella tua pagina web.
Un fan dell'utilizzo di Less? Nessun problema, basta clonare il repository e aggiungere queste righe:
Download, fork, pull, problemi di file e altro con il repository ufficiale Bootstrap su Github.
All'inizio di Twitter, gli ingegneri utilizzavano quasi tutte le librerie che conoscevano per soddisfare i requisiti del front-end. Bootstrap è nato come risposta alle sfide presentate e lo sviluppo ha accelerato rapidamente durante il primo Hackweek di Twitter.
Con l'aiuto e il feedback di molti ingegneri di Twitter, Bootstrap è cresciuto in modo significativo fino a comprendere non solo stili di base, ma modelli di design front-end più eleganti e durevoli.
Maggiori informazioni su dev.twitter.com ›
Bootstrap è testato e supportato nei principali browser moderni come Chrome, Safari, Internet Explorer e Firefox.
Bootstrap viene fornito completo di CSS compilati, modelli non compilati e di esempio.
Il sistema di griglia predefinito fornito come parte di Bootstrap è una griglia a 16 colonne larga 940px. È un assaggio del popolare sistema a griglia 960, ma senza il margine/padding aggiuntivo sui lati sinistro e destro.
Come mostrato qui, è possibile creare un layout di base con due "colonne", ciascuna che copre un numero di 16 colonne di base che abbiamo definito come parte del nostro sistema di griglia. Vedere gli esempi seguenti per ulteriori variazioni.
- < classe div = "riga" >
- < classe div = "span6 colonne" >
- ...
- </div>
- < classe div = "span10 colonne" >
- ...
- </div>
- </div>
Il layout centrato e di 940 px di larghezza di default per quasi tutti i siti Web o le pagine forniti da un singolo file <div.container>
.
- <corpo>
- < classe div = "contenitore" >
- ...
- </div>
- </corpo>
Una struttura della pagina fluida alternativa e flessibile con larghezze minime e massime e una barra laterale sinistra. Ottimo per app e documenti.
- <corpo>
- < classe div = "fluido contenitore" >
- < classe div = "barra laterale" >
- ...
- </div>
- < classe div = "contenuto" >
- ...
- </div>
- </div>
- </corpo>
Una gerarchia tipografica standard per strutturare le tue pagine web.
L'intera griglia tipografica si basa su due variabili Less nel nostro file preboot.less: @basefont
e @baseline
. La prima è la dimensione del carattere di base utilizzata in tutto e la seconda è l'altezza della linea di base.
Usiamo queste variabili, e un po' di matematica, per creare i margini, i padding e le altezze delle linee di tutti i nostri tipi e altro ancora.
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.
Utilizzo di enfasi, indirizzi e abbreviazioni
<strong>
<em>
<address>
<abbr>
I tag di enfasi ( <strong>
e <em>
) dovrebbero essere usati per indicare un'importanza o un'enfasi aggiuntiva di una parola o frase rispetto alla sua copia circostante. Utilizzare <strong>
per l'importanza e <em>
per enfatizzare lo stress .
Fusce dapibus , tellus ac cursus commodo , tortor mauris condimentum nibh , ut fermentum massa justo sit amet risus. Mecenate faucibus mollis interdum. Nulla vitae elit libero, a pharetra augu.
Nota: è ancora possibile utilizzare <b>
e <i>
tag in HTML5 e non devono essere contrassegnati rispettivamente in grassetto e corsivo (sebbene se esiste un elemento più semantico, utilizzalo). <b>
ha lo scopo di evidenziare parole o frasi senza dare ulteriore importanza, mentre <i>
è principalmente per voce, termini tecnici, ecc.
L' <address>
elemento viene utilizzato per le informazioni di contatto per il suo antenato più vicino o per l'intero corpo del lavoro. Ecco come appare:
Nota: ogni riga in un <address>
deve terminare con un'interruzione di riga ( <br />
) o essere racchiusa in un tag a livello di blocco (ad esempio, <p>
) per strutturare correttamente il contenuto.
Per abbreviazioni e acronimi, utilizzare il <abbr>
tag ( <acronym>
è deprecato in HTML5 ). Inserisci il modulo abbreviato all'interno del tag e imposta un titolo per il nome completo.
<blockquote>
<p>
<small>
Per includere una citazione in blocco, avvolgi <blockquote>
e <p>
tag <small>
. Usa l' <small>
elemento per citare la tua fonte e otterrai un trattino —
prima.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante venenatis dapibus posuere velit aliquet.
Il dottor Julius Hibbert
<ul>
<ul.unstyled>
<ol>
dl
<table>
<thead>
<tbody>
<tr>
<th>
<td>
<colspan>
<caption>
I tavoli sono fantastici, per molte cose. Le grandi tabelle, tuttavia, hanno bisogno di un po' di attenzione per il markup per essere utili, scalabili e leggibili (a livello di codice). Ecco alcuni suggerimenti per aiutare.
Avvolgi sempre le intestazioni di colonna in modo <thead>
tale che la gerarchia sia <thead>
> <tr>
> <th>
.
Simile alle intestazioni di colonna, tutto il contenuto del corpo della tabella dovrebbe essere racchiuso in un <tbody>
modo che la tua gerarchia sia <tbody>
> <tr>
> <td>
.
Tutte le tabelle verranno automaticamente stilizzate con solo i bordi essenziali per garantire la leggibilità e mantenere la struttura. Non c'è bisogno di aggiungere classi o attributi aggiuntivi.
# | Nome di battesimo | Cognome | Lingua |
---|---|---|---|
1 | Alcuni | Uno | inglese |
2 | Gio | Confezione da sei | inglese |
3 | Stu | Ammaccatura | Codice |
- <tabella>
- ...
- </tabella>
Crea un po' di fantasia con i tuoi tavoli aggiungendo strisce zebrate: aggiungi semplicemente la .zebra-striped
classe.
# | Nome di battesimo | Cognome | Lingua |
---|---|---|---|
1 | Alcuni | Uno | inglese |
2 | Gio | Confezione da sei | inglese |
3 | Stu | Ammaccatura | Codice |
Nota: lo striping Zebra è un miglioramento progressivo non disponibile per i browser meno recenti come IE8 e precedenti.
- < classe tabella = "a strisce zebrate" >
- ...
- </tabella>
Prendendo l'esempio precedente, miglioriamo l'utilità delle nostre tabelle fornendo funzionalità di ordinamento tramite jQuery e il plug-in Tablesorter . Fare clic sull'intestazione di qualsiasi colonna per modificare l'ordinamento.
# | Nome di battesimo | Cognome | Lingua |
---|---|---|---|
1 | Tuo | Uno | inglese |
2 | Gio | Confezione da sei | inglese |
3 | Stu | Ammaccatura | Codice |
- <script src = "js/jquery/jquery.tablesorter.min.js" ></script>
- <script >
- $ ( funzione () {
- $ ( "table#sortTableExample" ). tablesorter ({ sortList : [[ 1 , 0 ]] });
- });
- </script>
- < classe tabella = "a strisce zebrate" >
- ...
- </tabella>
A tutti i moduli vengono assegnati stili predefiniti per presentarli in modo leggibile e scalabile. Gli stili sono forniti per input di testo, elenchi di selezione, aree di testo, pulsanti di opzione, caselle di controllo e pulsanti.
Aggiungi .form-stacked
all'HTML del tuo modulo e avrai le etichette in cima ai loro campi invece che alla loro sinistra. Funziona benissimo se i tuoi moduli sono brevi o hai due colonne di input per moduli più pesanti.
Per convenzione, i pulsanti vengono utilizzati per le azioni mentre i collegamenti vengono utilizzati per gli oggetti. Ad esempio, "Download" potrebbe essere un pulsante e "attività recenti" potrebbe essere un collegamento.
Per impostazione predefinita, tutti i pulsanti hanno uno stile grigio chiaro, ma è possibile applicare un certo numero di classi funzionali per stili di colore diversi. Queste classi includono una .primary
classe blu, una classe azzurra .info
, una classe verde .success
e una classe rossa .danger
. Inoltre, arrotolare i tuoi stili è facile.
Gli stili dei pulsanti possono essere applicati a qualsiasi cosa con .btn
applicato. In genere ti consigliamo di applicarli solo a <a>
, <button>
e selezionare <input>
elementi. Ecco come appare:
Ti piacciono i pulsanti più grandi o più piccoli? Fallo!
Per i pulsanti che non sono attivi o sono disabilitati dall'app per un motivo o per l'altro, utilizzare lo stato disabilitato. Questo è .disabled
per i collegamenti e :disabled
per <button>
gli elementi.
div.alert-message
Messaggi di una riga per evidenziare il fallimento, il possibile fallimento o il successo di un'azione. Particolarmente utile per i moduli.
div.alert-message.block-message
Per i messaggi che richiedono un po' di spiegazione, abbiamo avvisi sullo stile del paragrafo. Questi sono perfetti per generare messaggi di errore più lunghi, avvisare un utente di un'azione in sospeso o semplicemente presentare informazioni per dare maggiore enfasi alla pagina.
I modali, finestre di dialogo o lightbox, sono ottimi per azioni contestuali in situazioni in cui è importante mantenere il contesto in background.
Un bel corpo...
I Twipsies sono super utili per aiutare un utente confuso e indirizzarlo nella giusta direzione.
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.
Usa i popover per fornire informazioni sottotestuali a una pagina senza influire sul layout.
Etiam porta sem malesuada magna mollis euismod. Mecenate faucibus mollis interdum. Morbi leo risus, porta ac consectetur ac, vestibolo a eros.
Bootstrap è stato creato con Preboot , un pacchetto open source di mixin e variabili da utilizzare insieme a Less , un preprocessore CSS per uno sviluppo web più semplice e veloce.
Scopri come abbiamo utilizzato Preboot in Bootstrap e come puoi utilizzarlo se scegli di eseguire Less sul tuo prossimo progetto.
Usa questa opzione per sfruttare appieno le variabili Less, i mixin e la nidificazione di Bootstrap in CSS tramite javascript nel tuo browser.
- <link rel = "stylesheet/less" href = "less/bootstrap.less" media = "all" />
- <script src = "js/less-1.1.3.min.js" ></script>
Non senti la soluzione .js? Prova l'app Less Mac o usa Node.js per compilare quando distribuisci il codice.
Ecco alcuni dei punti salienti di ciò che è incluso in Twitter Bootstrap come parte di Bootstrap. Vai al sito Web Bootstrap o alla pagina del progetto Github per scaricare e saperne di più.
Le variabili in Less sono perfette per mantenere e aggiornare il tuo CSS senza mal di testa. Quando vuoi cambiare un valore di colore o un valore usato di frequente, aggiornalo in un punto e sei pronto.
- // Collegamenti
- @linkColore : #8b59c2;
- @linkColorHover : scurisce ( @linkColor , 10 );
- // Grigi
- @nero : #000;
- @grayDark : schiarisce ( @nero , 25 %);
- @grigio : schiarire ( @nero , 50 %);
- @grayLight : schiarire ( @black , 70 %);
- @grayLighter : schiarire ( @nero , 90 %);
- @bianco : #fff;
- // Colori accentati
- @blu : #08b5fb;
- @verde : #46a546;
- @rosso : #9d261d;
- @giallo : #ffc40d;
- @arancione : #f89406;
- @rosa : #c3325f;
- @viola : #7a43b6;
- // Griglia di base
- @basefont : 13px ;
- @linea di base : 18px ;
Less fornisce anche un altro stile di commento oltre alla normale /* ... */
sintassi dei CSS.
- // Questo è un commento
- /* Anche questo è un commento */
I mixin sono fondamentalmente include o parziali per CSS, consentendoti di combinare un blocco di codice in uno solo. Sono ideali per proprietà con prefisso del fornitore come box-shadow
, gradienti tra browser, pile di caratteri e altro ancora. Di seguito è riportato un esempio dei mixin inclusi in Bootstrap.
- #carattere {
- . stenografia ( @weight : normale , @ size : 14px , @lineHeight : 20px ) {
- dimensione del carattere : @dimensione ;
- font - weight : @weight ;
- altezza della linea : @lineHeight ;
- }
- . sans - serif ( @weight : normal , @ size : 14px , @lineHeight : 20px ) {
- font - famiglia : "Helvetica Neue" , Helvetica , Arial , sans - serif ;
- dimensione del carattere : @dimensione ;
- font - weight : @weight ;
- altezza della linea : @lineHeight ;
- }
- . serif ( @weight : normale , @ size : 14px , @lineHeight : 20px ) {
- font - famiglia : "Georgia" , Times New Roman , Times , sans - serif ;
- dimensione del carattere : @dimensione ;
- font - weight : @weight ;
- altezza della linea : @lineHeight ;
- }
- . spazio unico ( @weight : normale , @size : 12px , @lineHeight : 20px ) {
- font - famiglia : "Monaco" , Courier New , monospace ;
- dimensione del carattere : @dimensione ;
- font - weight : @weight ;
- altezza della linea : @lineHeight ;
- }
- }
- #gradiente {
- . orizzontale ( @startColor : #555, @endColor: #333) {
- colore di sfondo : @endColor ;
- sfondo - ripetizione : ripetizione - x ;
- sfondo - immagine : - khtml - gradiente ( lineare , in alto a sinistra, in alto a destra , da ( @startColor ), a ( @endColor )); // Conquistatore
- immagine di sfondo : -moz - linear - gradiente ( a sinistra , @startColor , @endColor ); // FF 3.6+
- immagine di sfondo : -ms - linear - gradiente ( sinistra , @startColor , @endColor ) ; // IE10
- sfondo - immagine : - webkit - gradiente ( lineare , in alto a sinistra, in alto a destra , colore - stop ( 0 %, @startColor ), colore - stop ( 100 %, @endColor )); // Safari 4+, Chrome 2+
- immagine di sfondo : -webkit -lineare - gradiente ( sinistra , @startColor , @endColor ) ; _ // Safari 5.1+, Chrome 10+
- immagine di sfondo : -o - lineare - gradiente ( sinistra , @startColor , @endColor ) ; // Opera 11.10
- immagine di sfondo : gradiente lineare ( sinistra , @startColor , @endColor ) ; // Lo standard
- }
- . verticale ( @startColor : #555, @endColor: #333) {
- colore di sfondo : @endColor ;
- sfondo - ripetizione : ripetizione - x ;
- sfondo - immagine : - khtml - gradiente ( lineare , in alto a sinistra , in basso a sinistra , da ( @startColor ), a ( @endColor )); // Conquistatore
- immagine di sfondo : -moz -lineare - gradiente ( @startColor , @endColor ) ; _ // FF 3.6+
- immagine di sfondo : -ms -lineare - gradiente ( @startColor , @endColor ) ; _ // IE10
- sfondo - immagine : - webkit - gradiente ( lineare , in alto a sinistra , in basso a sinistra , colore - stop ( 0 %, @startColor ), colore - stop ( 100 %, @endColor )); // Safari 4+, Chrome 2+
- immagine di sfondo : -webkit -lineare - gradiente ( @startColor , @endColor ) ; _ // Safari 5.1+, Chrome 10+
- immagine di sfondo : -o - gradiente lineare ( @startColor , @endColor ) ; _ // Opera 11.10
- immagine di sfondo : gradiente lineare ( @startColor , @endColor ) ; // Lo standard
- }
- . direzionale ( @startColor : #555, @endColor: #333, @deg: 45deg) {
- ...
- }
- . verticale - tre - colori ( @startColor : #00b3ee, @midColor: #7a43b6, @colorStop: 50%, @endColor: #c3325f) {
- ...
- }
- }
Divertiti ed esegui un po' di matematica per generare mixin flessibili e potenti come quello qui sotto.
- // Griglia
- @gridColumns : 16 ;
- @gridColumnWidth : 40px ;
- @gridGutterWidth : 20px ;
- @siteWidth : ( @gridColumns * @gridColumnWidth ) + ( @gridGutterWidth * ( @gridColumns - 1 ));
- // Sistema a griglia
- . contenitore {
- larghezza : @siteWidth ;
- margine : 0 automatico ;
- . clearfix ();
- }
- . colonne ( @columnSpan : 1 ) {
- larghezza : ( @gridColumnWidth * @columnSpan ) + ( @gridGutterWidth * ( @columnSpan - 1 ));
- }
- . offset ( @columnOffset : 1 ) {
- margine sinistro : ( @gridColumnWidth * @columnOffset ) + ( @gridGutterWidth * ( @columnOffset - 1 ) ) + @extraSpace ;
- }