CSS
Impostazioni CSS globali, elementi HTML fondamentali progettati e migliorati con classi estensibili e un sistema di griglia avanzato.
Impostazioni CSS globali, elementi HTML fondamentali progettati e migliorati con classi estensibili e un sistema di griglia avanzato.
Scopri i dettagli sui componenti chiave dell'infrastruttura di Bootstrap, incluso il nostro approccio a uno sviluppo web migliore, più veloce e più forte.
Bootstrap fa uso di alcuni elementi HTML e proprietà CSS che richiedono l'uso del doctype HTML5. Includilo all'inizio di tutti i tuoi progetti.
Con Bootstrap 2, abbiamo aggiunto stili ottimizzati per dispositivi mobili opzionali per gli aspetti chiave del framework. Con Bootstrap 3, abbiamo riscritto il progetto per renderlo mobile friendly sin dall'inizio. Invece di aggiungere stili mobili opzionali, sono integrati direttamente nel nucleo. In effetti, Bootstrap è mobile first . Gli stili Mobile first possono essere trovati nell'intera libreria invece che in file separati.
Per garantire un rendering e uno zoom al tocco corretti, aggiungi il meta tag viewport al tuo file <head>
.
Puoi disabilitare le funzionalità di zoom sui dispositivi mobili aggiungendo user-scalable=no
al meta tag viewport. Ciò disabilita lo zoom, il che significa che gli utenti possono solo scorrere e fa sì che il tuo sito si senta un po' più simile a un'applicazione nativa. Nel complesso, non lo consigliamo su tutti i siti, quindi fai attenzione!
Bootstrap imposta la visualizzazione globale di base, la tipografia e gli stili di collegamento. Nello specifico noi:
background-color: #fff;
ilbody
@font-family-base
, @font-size-base
, e @line-height-base
come base tipografica@link-color
e applica le sottolineature del collegamento solo su:hover
Questi stili possono essere trovati all'interno di scaffolding.less
.
Per migliorare il rendering cross-browser, utilizziamo Normalize.css , un progetto di Nicolas Gallagher e Jonathan Neal .
Bootstrap richiede un elemento contenitore per avvolgere i contenuti del sito e ospitare il nostro sistema di griglia. Puoi scegliere uno dei due contenitori da utilizzare nei tuoi progetti. Nota che, a causa di padding
e altro, nessuno dei due container è annidabile.
Utilizzare .container
per un contenitore reattivo a larghezza fissa.
Utilizzare .container-fluid
per un contenitore a larghezza intera, che copre l'intera larghezza della finestra.
Bootstrap include un primo sistema mobile a griglia fluida reattivo che scala in modo appropriato fino a 12 colonne all'aumentare delle dimensioni del dispositivo o del viewport. Include classi predefinite per opzioni di layout semplici, oltre a potenti mixin per generare più layout semantici .
I sistemi a griglia vengono utilizzati per creare layout di pagina attraverso una serie di righe e colonne che ospitano i tuoi contenuti. Ecco come funziona il sistema di griglia Bootstrap:
.container
(larghezza fissa) o .container-fluid
(larghezza intera) per un corretto allineamento e riempimento..row
e .col-xs-4
sono disponibili per creare rapidamente layout di griglia. Meno mixin possono essere utilizzati anche per layout più semantici.padding
. Tale riempimento è sfalsato nelle righe per la prima e l'ultima colonna tramite un margine negativo su .row
s..col-xs-4
..col-md-*
classe a un elemento non influirà solo sul suo stile su dispositivi medi ma anche su dispositivi grandi se una .col-lg-*
classe non è presente.Guarda gli esempi per applicare questi principi al tuo codice.
Usiamo le seguenti media query nei nostri file Less per creare i punti di interruzione chiave nel nostro sistema di griglia.
Occasionalmente espandiamo queste query multimediali per includere a max-width
per limitare CSS a un insieme più ristretto di dispositivi.
Scopri come funzionano gli aspetti del sistema di griglia Bootstrap su più dispositivi con una pratica tabella.
Dispositivi extra piccoli Telefoni (<768px) | Piccoli dispositivi Tablet (≥768px) | Dispositivi medi Desktop (≥992px) | Dispositivi di grandi dimensioni Desktop (≥1200px) | |
---|---|---|---|---|
Comportamento della griglia | Orizzontale in ogni momento | Compresso all'inizio, orizzontale sopra i punti di interruzione | ||
Larghezza contenitore | Nessuno (automatico) | 750px | 970px | 1170px |
Prefisso di classe | .col-xs- |
.col-sm- |
.col-md- |
.col-lg- |
# di colonne | 12 | |||
Larghezza della colonna | Auto | ~62px | ~81px | ~97px |
Larghezza della grondaia | 30px (15px su ciascun lato di una colonna) | |||
Nidificabile | sì | |||
Compensazioni | sì | |||
Ordinamento delle colonne | sì |
Utilizzando un unico insieme di .col-md-*
classi di griglia, puoi creare un sistema di griglia di base che inizia impilato su dispositivi mobili e dispositivi tablet (dalla gamma extra piccola a piccola) prima di diventare orizzontale sui dispositivi desktop (medi). Posiziona le colonne della griglia in qualsiasi file .row
.
Trasforma qualsiasi layout di griglia a larghezza fissa in un layout a larghezza intera modificando il tuo più esterno .container
in .container-fluid
.
Non vuoi che le tue colonne vengano semplicemente impilate in dispositivi più piccoli? Usa le classi della griglia dei dispositivi extra small e medium aggiungendo .col-xs-*
.col-md-*
alle tue colonne. Vedi l'esempio qui sotto per un'idea migliore di come funziona.
Basati sull'esempio precedente creando layout ancora più dinamici e potenti con .col-sm-*
le classi tablet.
Se più di 12 colonne sono posizionate all'interno di una singola riga, ogni gruppo di colonne extra verrà, come un'unica unità, a capo su una nuova riga.
Con i quattro livelli di griglie disponibili, sei destinato a incorrere in problemi in cui, in determinati punti di interruzione, le tue colonne non vengono cancellate del tutto perché una è più alta dell'altra. Per risolvere il problema, usa una combinazione di a .clearfix
e le nostre classi di utilità reattive .
Oltre alla cancellazione delle colonne nei punti di interruzione reattivi, potrebbe essere necessario reimpostare offset, push o pull . Guardalo in azione nell'esempio della griglia .
Sposta le colonne a destra usando le .col-md-offset-*
classi. Queste classi aumentano il margine sinistro di una colonna di *
colonne. Ad esempio, .col-md-offset-4
si sposta .col-md-4
su quattro colonne.
Puoi anche sostituire gli offset dai livelli di griglia inferiori con .col-*-offset-0
le classi.
Per annidare i tuoi contenuti con la griglia predefinita, aggiungi un nuovo .row
e un insieme di colonne all'interno di una colonna .col-sm-*
esistente . .col-sm-*
Le righe nidificate devono includere un set di colonne che si sommano fino a 12 o meno (non è necessario utilizzare tutte le 12 colonne disponibili).
Cambia facilmente l'ordine delle nostre colonne della griglia integrate con classi di modifica .col-md-push-*
..col-md-pull-*
Oltre alle classi di griglia predefinite per layout veloci, Bootstrap include Less variabili e mixin per generare rapidamente i tuoi layout semantici semplici.
Le variabili determinano il numero di colonne, la larghezza della grondaia e il punto di media query in cui iniziare le colonne mobili. Li usiamo per generare le classi di griglia predefinite documentate sopra, così come per i mixin personalizzati elencati di seguito.
I mixin vengono utilizzati insieme alle variabili della griglia per generare CSS semantici per le singole colonne della griglia.
Puoi modificare le variabili in base ai tuoi valori personalizzati o semplicemente utilizzare i mixin con i loro valori predefiniti. Ecco un esempio di utilizzo delle impostazioni predefinite per creare un layout a due colonne con uno spazio vuoto tra.
Tutte le intestazioni HTML, <h1>
tramite <h6>
, sono disponibili. .h1
sono disponibili anche .h6
classi, per quando vuoi abbinare lo stile del carattere di un'intestazione ma vuoi comunque che il tuo testo venga visualizzato in linea.
h1. Intestazione Bootstrap |
Semigrassetto 36px |
h2. Intestazione Bootstrap |
Semigrassetto 30px |
h3. Intestazione Bootstrap |
Semigrassetto 24px |
h4. Intestazione Bootstrap |
Semigrassetto 18px |
h5. Intestazione Bootstrap |
Semigrassetto 14px |
h6. Intestazione Bootstrap |
Semigrassetto 12px |
Crea un testo secondario più chiaro in qualsiasi intestazione con un <small>
tag generico o la .small
classe.
h1. Intestazione Bootstrap Testo secondario |
h2. Intestazione Bootstrap Testo secondario |
h3. Intestazione Bootstrap Testo secondario |
h4. Intestazione Bootstrap Testo secondario |
h5. Intestazione Bootstrap Testo secondario |
h6. Intestazione Bootstrap Testo secondario |
L'impostazione predefinita globale di Bootstrap font-size
è 14px , con a line-height
di 1.428 . Questo si applica a <body>
e tutti i paragrafi. Inoltre, <p>
(paragrafi) ricevono un margine inferiore della metà dell'altezza della linea calcolata (10px per impostazione predefinita).
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.
Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec ullamcorper nulla non metus auctor fringilla. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Donec ullamcorper nulla non metus auctor fringilla.
Mecenate sed diam eget risus varius blandit sit amet non magna. Donec id elit non mi porta gravida at eget metus. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit.
Fai risaltare un paragrafo aggiungendo .lead
.
Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Duis mollis, est non commodo luctus.
La scala tipografica si basa su due variabili Less in variabili.less : @font-size-base
e @line-height-base
. La prima è la dimensione del carattere di base utilizzata in tutto e la seconda è l'altezza della linea di base. Usiamo queste variabili e alcuni semplici calcoli matematici per creare i margini, i padding e le altezze delle linee di tutti i nostri tipi e altro ancora. Personalizzali e Bootstrap si adatta.
Per evidenziare una sequenza di testo a causa della sua rilevanza in un altro contesto, utilizzare il <mark>
tag.
È possibile utilizzare il tag mark aevidenziaretesto.
Per indicare i blocchi di testo che sono stati eliminati utilizzare il <del>
tag.
Questa riga di testo deve essere trattata come testo cancellato.
Per indicare blocchi di testo non più rilevanti utilizzare il <s>
tag.
Questa riga di testo deve essere trattata come non più accurata.
Per indicare le aggiunte al documento utilizzare il <ins>
tag.
Questa riga di testo deve essere trattata come un'aggiunta al documento.
Per sottolineare il testo usa il <u>
tag.
Questa riga di testo verrà visualizzata come sottolineata
Utilizza i tag di enfasi predefiniti di HTML con stili leggeri.
Per ridurre l'enfasi in linea o blocchi di testo, utilizzare il <small>
tag per impostare il testo all'85% della dimensione del genitore. Gli elementi di intestazione ricevono i propri font-size
per gli elementi nidificati <small>
.
In alternativa puoi utilizzare un elemento inline con .small
al posto di qualsiasi <small>
.
Questa riga di testo deve essere trattata come una stampa fine.
Per enfatizzare uno snippet di testo con una grammatura più pesante.
Il seguente frammento di testo viene visualizzato in grassetto .
Per enfatizzare un frammento di testo in corsivo.
Il seguente frammento di testo viene visualizzato in corsivo .
Sentiti libero di usare <b>
e <i>
in HTML5. <b>
ha lo scopo di evidenziare parole o frasi senza trasmettere ulteriore importanza mentre <i>
è principalmente per voce, termini tecnici, ecc.
Riallinea facilmente il testo ai componenti con le classi di allineamento del testo.
Testo allineato a sinistra.
Testo allineato al centro.
Testo allineato a destra.
Testo giustificato.
Nessun testo a capo.
Trasforma il testo in componenti con classi di capitalizzazione del testo.
Testo minuscolo.
Testo maiuscolo.
Testo in maiuscolo.
Implementazione stilizzata <abbr>
dell'elemento HTML per abbreviazioni e acronimi per mostrare la versione estesa al passaggio del mouse. Le abbreviazioni con un title
attributo hanno un bordo inferiore punteggiato chiaro e un cursore di aiuto al passaggio del mouse, fornendo un contesto aggiuntivo al passaggio del mouse e agli utenti delle tecnologie assistive.
Un'abbreviazione della parola attributo è attr .
Aggiungi .initialism
a un'abbreviazione per una dimensione del carattere leggermente più piccola.
L' HTML è la cosa migliore dopo il pane a fette.
Presentare le informazioni di contatto per l'antenato più vicino o l'intero corpo di lavoro. Mantieni la formattazione terminando tutte le righe con <br>
.
Per citare blocchi di contenuto da un'altra fonte all'interno del documento.
Avvolgi <blockquote>
qualsiasi HTML come citazione. Per virgolette semplici, consigliamo un <p>
.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Intero posuere erat a ante.
Cambiamenti di stile e contenuto per semplici variazioni su uno standard <blockquote>
.
Aggiungi un <footer>
per identificare la fonte. Avvolgi il nome del lavoro di origine in <cite>
.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Intero posuere erat a ante.
Aggiungi .blockquote-reverse
per una citazione in blocco con contenuto allineato a destra.
Un elenco di elementi in cui l'ordine non è esplicitamente rilevante.
Un elenco di elementi in cui l'ordine è esplicitamente rilevante .
Rimuovere il margine sinistro e predefinito list-style
sugli elementi dell'elenco (solo figli immediati). Questo si applica solo agli elementi dell'elenco dei figli immediati , il che significa che dovrai aggiungere la classe anche per tutti gli elenchi nidificati.
Posiziona tutti gli elementi dell'elenco su una singola riga con display: inline-block;
un leggero riempimento.
Un elenco di termini con le relative descrizioni.
Metti in <dl>
fila termini e descrizioni fianco a fianco. Inizia impilato come <dl>
s predefinito, ma quando la barra di navigazione si espande, fai anche questi.
Gli elenchi di descrizioni orizzontali troncheranno i termini troppo lunghi per rientrare nella colonna di sinistra con text-overflow
. Nelle viste più strette, passeranno al layout in pila predefinito.
Avvolgi frammenti di codice in linea con <code>
.
<section>
dovrebbe essere avvolto come inline.
Utilizzare il <kbd>
per indicare l'input che in genere viene immesso tramite tastiera.
Utilizzare <pre>
per più righe di codice. Assicurati di sfuggire alle parentesi angolari nel codice per un rendering corretto.
<p>Testo di esempio qui...</p>
Puoi facoltativamente aggiungere la .pre-scrollable
classe, che imposterà un'altezza massima di 350 px e fornirà una barra di scorrimento dell'asse y.
Per indicare le variabili utilizzare il <var>
tag.
y = m x + b
Per indicare blocchi di esempio di output da un programma, utilizzare il <samp>
tag.
Questo testo deve essere trattato come output di esempio da un programma per computer.
Per uno stile di base, con imbottitura leggera e solo divisori orizzontali, aggiungi la classe base .table
a qualsiasi <table>
. Può sembrare super ridondante, ma dato l'uso diffuso di tabelle per altri plugin come calendari e selettori di date, abbiamo deciso di isolare i nostri stili di tabella personalizzati.
# | Nome di battesimo | Cognome | Nome utente |
---|---|---|---|
1 | Segno | Ottone | @mdo |
2 | Giacobbe | Thornton | @Grasso |
3 | Larry | l'uccello |
Utilizzare .table-striped
per aggiungere strisce zebrate a qualsiasi riga di tabella all'interno di <tbody>
.
Lo stile delle tabelle a strisce viene eseguito tramite il :nth-child
selettore CSS, che non è disponibile in Internet Explorer 8.
# | Nome di battesimo | Cognome | Nome utente |
---|---|---|---|
1 | Segno | Ottone | @mdo |
2 | Giacobbe | Thornton | @Grasso |
3 | Larry | l'uccello |
Aggiungi .table-bordered
i bordi su tutti i lati della tabella e delle celle.
# | Nome di battesimo | Cognome | Nome utente |
---|---|---|---|
1 | Segno | Ottone | @mdo |
2 | Giacobbe | Thornton | @Grasso |
3 | Larry | l'uccello |
Aggiungi .table-hover
per abilitare uno stato al passaggio del mouse sulle righe della tabella all'interno di un file <tbody>
.
# | Nome di battesimo | Cognome | Nome utente |
---|---|---|---|
1 | Segno | Ottone | @mdo |
2 | Giacobbe | Thornton | @Grasso |
3 | Larry | l'uccello |
Aggiungi .table-condensed
per rendere i tavoli più compatti tagliando a metà l'imbottitura delle celle.
# | Nome di battesimo | Cognome | Nome utente |
---|---|---|---|
1 | Segno | Ottone | @mdo |
2 | Giacobbe | Thornton | @Grasso |
3 | Larry l'Uccello |
Usa le classi contestuali per colorare le righe della tabella o le singole celle.
Classe | Descrizione |
---|---|
.active |
Applica il colore al passaggio del mouse a una riga o cella particolare |
.success |
Indica un'azione riuscita o positiva |
.info |
Indica un cambiamento o un'azione informativa neutra |
.warning |
Indica un avviso che potrebbe richiedere attenzione |
.danger |
Indica un'azione pericolosa o potenzialmente negativa |
# | Intestazione di colonna | Intestazione di colonna | Intestazione di colonna |
---|---|---|---|
1 | Contenuto della colonna | Contenuto della colonna | Contenuto della colonna |
2 | Contenuto della colonna | Contenuto della colonna | Contenuto della colonna |
3 | Contenuto della colonna | Contenuto della colonna | Contenuto della colonna |
4 | Contenuto della colonna | Contenuto della colonna | Contenuto della colonna |
5 | Contenuto della colonna | Contenuto della colonna | Contenuto della colonna |
6 | Contenuto della colonna | Contenuto della colonna | Contenuto della colonna |
7 | Contenuto della colonna | Contenuto della colonna | Contenuto della colonna |
8 | Contenuto della colonna | Contenuto della colonna | Contenuto della colonna |
9 | Contenuto della colonna | Contenuto della colonna | Contenuto della colonna |
L'uso del colore per aggiungere significato a una riga di tabella oa una singola cella fornisce solo un'indicazione visiva, che non verrà trasmessa agli utenti di tecnologie assistive, come i lettori di schermo. Assicurati che le informazioni indicate dal colore siano ovvie dal contenuto stesso (il testo visibile nella riga/cella della tabella pertinente) o siano incluse attraverso mezzi alternativi, come testo aggiuntivo nascosto con la .sr-only
classe.
Crea tabelle reattive avvolgendole .table
per .table-responsive
farle scorrere orizzontalmente su dispositivi di piccole dimensioni (meno di 768 px). Quando visualizzi qualcosa di più grande di 768px di larghezza, non vedrai alcuna differenza in queste tabelle.
Le tabelle reattive utilizzano overflow-y: hidden
, che ritaglia qualsiasi contenuto che va oltre i bordi inferiore o superiore della tabella. In particolare, questo può tagliare i menu a discesa e altri widget di terze parti.
Firefox ha uno stile fieldset imbarazzante width
che interferisce con la tabella reattiva. Questo non può essere ignorato senza un hack specifico per Firefox che non forniamo in Bootstrap:
Per ulteriori informazioni, leggi questa risposta Stack Overflow .
# | Intestazione tabella | Intestazione tabella | Intestazione tabella | Intestazione tabella | Intestazione tabella | Intestazione tabella |
---|---|---|---|---|---|---|
1 | Cella della tabella | Cella della tabella | Cella della tabella | Cella della tabella | Cella della tabella | Cella della tabella |
2 | Cella della tabella | Cella della tabella | Cella della tabella | Cella della tabella | Cella della tabella | Cella della tabella |
3 | Cella della tabella | Cella della tabella | Cella della tabella | Cella della tabella | Cella della tabella | Cella della tabella |
# | Intestazione tabella | Intestazione tabella | Intestazione tabella | Intestazione tabella | Intestazione tabella | Intestazione tabella |
---|---|---|---|---|---|---|
1 | Cella della tabella | Cella della tabella | Cella della tabella | Cella della tabella | Cella della tabella | Cella della tabella |
2 | Cella della tabella | Cella della tabella | Cella della tabella | Cella della tabella | Cella della tabella | Cella della tabella |
3 | Cella della tabella | Cella della tabella | Cella della tabella | Cella della tabella | Cella della tabella | Cella della tabella |
I singoli controlli dei moduli ricevono automaticamente uno stile globale. Tutti gli elementi testuali <input>
, <textarea>
e <select>
con .form-control
sono impostati per width: 100%;
impostazione predefinita. Avvolgi etichette e controlli .form-group
per una spaziatura ottimale.
Non mischiare i gruppi di moduli direttamente con i gruppi di input . Annidare invece il gruppo di input all'interno del gruppo di moduli.
Aggiungi .form-inline
al tuo modulo (che non deve essere un <form>
) per i controlli allineati a sinistra e inline-block. Questo si applica solo ai moduli all'interno di finestre di almeno 768 pixel di larghezza.
Gli input e le selezioni sono stati width: 100%;
applicati per impostazione predefinita in Bootstrap. All'interno dei moduli inline, lo reimpostiamo in width: auto;
modo che più controlli possano risiedere sulla stessa riga. A seconda del layout, potrebbero essere necessarie larghezze personalizzate aggiuntive.
I lettori di schermo avranno problemi con i tuoi moduli se non includi un'etichetta per ogni input. Per questi moduli in linea, puoi nascondere le etichette utilizzando la .sr-only
classe. Esistono ulteriori metodi alternativi per fornire un'etichetta per le tecnologie assistive, come l' attributo aria-label
, aria-labelledby
o . title
Se nessuno di questi è presente, le utilità per la lettura dello schermo possono ricorrere all'utilizzo placeholder
dell'attributo, se presente, ma si noti che l'uso placeholder
in sostituzione di altri metodi di etichettatura non è consigliato.
Usa le classi di griglia predefinite di Bootstrap per allineare etichette e gruppi di controlli del modulo in un layout orizzontale aggiungendo .form-horizontal
al modulo (che non deve essere un <form>
). In questo modo cambia .form-group
s in modo che si comporti come righe della griglia, quindi non c'è bisogno di .row
.
Esempi di controlli di modulo standard supportati in un layout di modulo di esempio.
Controllo modulo più comune, campi di input basati su testo. Include il supporto per tutti i tipi di HTML5: text
, password
, datetime
, datetime-local
, date
, month
, time
, week
, number
, email
, url
, search
, tel
, e color
.
Gli input avranno uno stile completo solo se type
vengono dichiarati correttamente.
Per aggiungere testo o pulsanti integrati prima e/o dopo qualsiasi testo basato su <input>
, controlla il componente del gruppo di input .
Controllo modulo che supporta più righe di testo. Modificare rows
l'attributo se necessario.
Le caselle di controllo servono per selezionare una o più opzioni in un elenco, mentre le radio servono per selezionare un'opzione tra molte.
Le caselle di controllo e le radio disabilitate sono supportate, ma per fornire un cursore "non consentito" al passaggio del mouse su parent <label>
, dovrai aggiungere la .disabled
classe a parent .radio
, .radio-inline
, .checkbox
o .checkbox-inline
.
Usa le classi .checkbox-inline
o .radio-inline
su una serie di caselle di controllo o radio per i controlli che appaiono sulla stessa riga.
Se non hai testo all'interno di <label>
, l'input è posizionato come ti aspetteresti. Attualmente funziona solo con caselle di controllo e radio non in linea. Ricordarsi di fornire comunque una qualche forma di etichetta per le tecnologie assistive (ad esempio, utilizzando aria-label
).
Nota che molti menu di selezione nativi, in particolare in Safari e Chrome, hanno angoli arrotondati che non possono essere modificati tramite le border-radius
proprietà.
Per <select>
i controlli con l' multiple
attributo, per impostazione predefinita vengono visualizzate più opzioni.
Quando è necessario inserire del testo normale accanto all'etichetta di un modulo all'interno di un modulo, utilizzare la .form-control-static
classe su un <p>
.
outline
Rimuoviamo gli stili predefiniti su alcuni controlli del modulo e applichiamo un box-shadow
a al suo posto per :focus
.
:focus
Stato dimostrativoL'input di esempio sopra utilizza stili personalizzati nella nostra documentazione per dimostrare lo :focus
stato su un file .form-control
.
Aggiungi l' disabled
attributo booleano su un input per impedire le interazioni dell'utente. Gli input disabilitati appaiono più chiari e aggiungono un not-allowed
cursore.
Aggiungi l' disabled
attributo a a <fieldset>
per disabilitare tutti i controlli all'interno <fieldset>
di contemporaneamente.
<a>
Per impostazione predefinita, i browser tratteranno tutti i controlli dei moduli nativi ( <input>
, <select>
e <button>
gli elementi) all'interno di a <fieldset disabled>
come disabilitati, impedendo interazioni sia con la tastiera che con il mouse su di essi. Tuttavia, se il tuo modulo include anche <a ... class="btn btn-*">
elementi, a questi verrà assegnato solo uno stile di pointer-events: none
. Come notato nella sezione sullo stato disabilitato per i pulsanti (e in particolare nella sottosezione per gli elementi di ancoraggio), questa proprietà CSS non è ancora standardizzata e non è completamente supportata in Opera 18 e precedenti, o in Internet Explorer 11, e ha vinto non impedisce agli utenti della tastiera di mettere a fuoco o attivare questi collegamenti. Quindi, per sicurezza, usa JavaScript personalizzato per disabilitare tali collegamenti.
Sebbene Bootstrap applichi questi stili in tutti i browser, Internet Explorer 11 e versioni precedenti non supportano completamente l' disabled
attributo su un file <fieldset>
. Usa JavaScript personalizzato per disabilitare il fieldset in questi browser.
Aggiungi l' readonly
attributo booleano su un input per impedire la modifica del valore dell'input. Gli input di sola lettura appaiono più chiari (proprio come gli input disabilitati), ma mantengono il cursore standard.
Testo della guida a livello di blocco per i controlli dei moduli.
Il testo della guida deve essere esplicitamente associato al controllo del modulo a cui si riferisce utilizzando l' aria-describedby
attributo. Ciò garantirà che le tecnologie assistive, come le utilità per la lettura dello schermo, annunceranno questo testo della guida quando l'utente si concentra o accede al controllo.
Bootstrap include stili di convalida per gli stati di errore, avviso e successo sui controlli dei moduli. Per utilizzare, aggiungere .has-warning
, .has-error
o .has-success
all'elemento padre. Qualsiasi .control-label
, .form-control
, e .help-block
all'interno di quell'elemento riceverà gli stili di convalida.
L'uso di questi stili di convalida per denotare lo stato di un controllo modulo fornisce solo un'indicazione visiva basata sul colore, che non verrà trasmessa agli utenti di tecnologie assistive, come lettori di schermo, o agli utenti daltonici.
Assicurarsi che venga fornita anche un'indicazione alternativa dello stato. Ad esempio, puoi includere un suggerimento sullo stato nel <label>
testo del controllo del modulo stesso (come nel caso dell'esempio di codice seguente), includere un Glyphicon (con un testo alternativo appropriato usando la .sr-only
classe - vedere gli esempi di Glyphicon ) o fornendo un blocco di testo della guida aggiuntivo . In particolare per le tecnologie assistive, è anche possibile assegnare un aria-invalid="true"
attributo ai controlli dei moduli non validi.
Puoi anche aggiungere icone di feedback opzionali con l'aggiunta di .has-feedback
e l'icona a destra.
Le icone di feedback funzionano solo con <input class="form-control">
elementi testuali.
Il posizionamento manuale delle icone di feedback è necessario per gli ingressi senza etichetta e per i gruppi di ingressi con un componente aggiuntivo sulla destra. Si consiglia vivamente di fornire etichette per tutti gli input per motivi di accessibilità. Se desideri impedire la visualizzazione delle etichette, nascondile con la .sr-only
classe. Se devi fare a meno delle etichette, regola il top
valore dell'icona di feedback. Per i gruppi di input, regola il right
valore su un valore pixel appropriato a seconda della larghezza del tuo componente aggiuntivo.
Per garantire che le tecnologie assistive, come le utilità per la lettura dello schermo, trasmettano correttamente il significato di un'icona, è necessario includere del testo nascosto aggiuntivo nella .sr-only
classe e associarlo esplicitamente al controllo del modulo a cui si riferisce utilizzando aria-describedby
. In alternativa, assicurati che il significato (ad esempio, il fatto che sia presente un avviso per un particolare campo di immissione di testo) venga trasmesso in qualche altra forma, ad esempio la modifica del testo dell'effettivo <label>
associato al controllo del modulo.
Sebbene gli esempi seguenti menzionino già lo stato di convalida dei rispettivi controlli di forma nel <label>
testo stesso, la tecnica di cui sopra (utilizzando .sr-only
testo e aria-describedby
) è stata inclusa a scopo illustrativo.
.sr-only
etichette nascosteSe usi la .sr-only
classe per nascondere i controlli di un modulo <label>
(piuttosto che usare altre opzioni di etichettatura, come l' aria-label
attributo), Bootstrap regolerà automaticamente la posizione dell'icona una volta aggiunta.
Imposta le altezze usando classi come .input-lg
, e imposta le larghezze usando classi di colonne della griglia come .col-lg-*
.
Crea controlli modulo più alti o più corti che corrispondano alle dimensioni dei pulsanti.
Ridimensiona rapidamente le etichette e i controlli dei moduli all'interno .form-horizontal
aggiungendo .form-group-lg
o .form-group-sm
.
Avvolgi gli input nelle colonne della griglia o in qualsiasi elemento padre personalizzato per applicare facilmente le larghezze desiderate.
Utilizzare le classi di pulsanti su un elemento <a>
, <button>
o .<input>
Sebbene le classi di pulsanti possano essere utilizzate su <a>
e <button>
elementi, solo <button>
gli elementi sono supportati all'interno dei nostri componenti nav e navbar.
Se gli <a>
elementi vengono utilizzati per fungere da pulsanti, attivando la funzionalità in-page, piuttosto che passare a un altro documento o sezione all'interno della pagina corrente, dovrebbero anche ricevere un appropriato role="button"
.
Come best practice, consigliamo vivamente di utilizzare l' <button>
elemento quando possibile per garantire la corrispondenza del rendering cross-browser.
Tra le altre cose, c'è un bug in Firefox <30 che ci impedisce di impostare i pulsanti basati su line-height
of <input>
, facendoli non corrispondere esattamente all'altezza degli altri pulsanti su Firefox.
Utilizza una delle classi di pulsanti disponibili per creare rapidamente un pulsante con uno stile.
L'uso del colore per aggiungere significato a un pulsante fornisce solo un'indicazione visiva, che non verrà trasmessa agli utenti di tecnologie assistive, come lettori di schermo. Assicurati che le informazioni indicate dal colore siano ovvie dal contenuto stesso (il testo visibile del pulsante) o siano incluse attraverso mezzi alternativi, come testo aggiuntivo nascosto con la .sr-only
classe.
Ti piacciono i pulsanti più grandi o più piccoli? Aggiungi .btn-lg
, .btn-sm
, o .btn-xs
per dimensioni aggiuntive.
Crea pulsanti a livello di blocco, quelli che si estendono per l'intera larghezza di un genitore, aggiungendo .btn-block
.
I pulsanti appariranno premuti (con uno sfondo più scuro, un bordo più scuro e un'ombra interna) quando sono attivi. Per <button>
gli elementi, questo viene fatto tramite :active
. Per <a>
gli elementi, è fatto con .active
. Tuttavia, è possibile utilizzare .active
su <button>
s (e includere l' aria-pressed="true"
attributo) se è necessario replicare lo stato attivo a livello di codice.
Non c'è bisogno di aggiungere :active
in quanto è una pseudo-classe, ma se devi forzare lo stesso aspetto, vai avanti e aggiungi .active
.
Aggiungi la .active
classe ai <a>
pulsanti.
Collegamento primario Collegamento
Rendi i pulsanti non cliccabili sfumandoli di nuovo con opacity
.
Aggiungi l' disabled
attributo ai <button>
pulsanti.
Se aggiungi l' disabled
attributo a <button>
, Internet Explorer 9 e versioni precedenti renderanno il testo grigio con un'ombra di testo sgradevole che non possiamo correggere.
Aggiungi la .disabled
classe ai <a>
pulsanti.
Collegamento primario Collegamento
Usiamo .disabled
come classe di utilità qui, simile alla .active
classe comune, quindi non è richiesto alcun prefisso.
Questa classe usa pointer-events: none
per provare a disabilitare la funzionalità di collegamento di<a>
s, ma quella proprietà CSS non è ancora standardizzata e non è completamente supportata in Opera 18 e precedenti, o in Internet Explorer 11. Inoltre, anche nei browser che supportano pointer-events: none
, tastiera la navigazione rimane inalterata, il che significa che gli utenti vedenti della tastiera e gli utenti di tecnologie assistive potranno comunque attivare questi collegamenti. Quindi, per sicurezza, usa JavaScript personalizzato per disabilitare tali collegamenti.
Le immagini in Bootstrap 3 possono essere rese reattive tramite l'aggiunta della .img-responsive
classe. Questo vale max-width: 100%;
,height: auto;
per display: block;
l'immagine in modo che si adatti perfettamente all'elemento genitore.
Per centrare le immagini che utilizzano la .img-responsive
classe, usa .center-block
invece di .text-center
. Vedere la sezione classi di supporto per maggiori dettagli su.center-block
sull'utilizzo.
In Internet Explorer 8-10, le immagini SVG con .img-responsive
sono di dimensioni sproporzionate. Per risolvere questo problema, aggiungi width: 100% \9;
dove necessario. Bootstrap non lo applica automaticamente poiché causa complicazioni ad altri formati di immagine.
Aggiungi classi a un <img>
elemento per applicare facilmente uno stile alle immagini in qualsiasi progetto.
Tieni presente che Internet Explorer 8 non supporta gli angoli arrotondati.
Trasmetti significato attraverso il colore con una manciata di classi di utilità di enfasi. Questi possono anche essere applicati ai collegamenti e si scuriranno al passaggio del mouse proprio come i nostri stili di collegamento predefiniti.
Fusce dapibus, tellus ac cursus commodo, tortor mauris nibh.
Nullam id dolor id nibh ultricies vehicula ut id elit.
Duis mollis, est non commodo luctus, nisi erat porttitor ligula.
Mecenate sed diam eget risus varius blandit sit amet non magna.
Etiam porta sem malesuada magna mollis euismod.
Donec ullamcorper nulla non metus auctor fringilla.
A volte le classi di enfasi non possono essere applicate a causa della specificità di un altro selettore. Nella maggior parte dei casi, una soluzione sufficiente consiste nell'avvolgere il testo in a <span>
con la classe.
L'uso del colore per aggiungere significato fornisce solo un'indicazione visiva, che non verrà trasmessa agli utenti di tecnologie assistive, come i lettori di schermo. Assicurati che le informazioni denotate dal colore siano ovvie dal contenuto stesso (i colori contestuali sono usati solo per rafforzare il significato che è già presente nel testo/markup) o siano incluse attraverso mezzi alternativi, come testo aggiuntivo nascosto con la .sr-only
classe .
Simile alle classi di colore del testo contestuale, imposta facilmente lo sfondo di un elemento su qualsiasi classe contestuale. I componenti di ancoraggio si scuriranno al passaggio del mouse, proprio come le classi di testo.
Nullam id dolor id nibh ultricies vehicula ut id elit.
Duis mollis, est non commodo luctus, nisi erat porttitor ligula.
Mecenate sed diam eget risus varius blandit sit amet non magna.
Etiam porta sem malesuada magna mollis euismod.
Donec ullamcorper nulla non metus auctor fringilla.
A volte le classi di background contestuali non possono essere applicate a causa della specificità di un altro selettore. In alcuni casi, una soluzione alternativa sufficiente è racchiudere il contenuto dell'elemento in a <div>
con la classe.
Come per i colori contestuali , assicurati che anche qualsiasi significato veicolato attraverso il colore sia trasmesso in un formato che non sia puramente rappresentativo.
Usa l'icona di chiusura generica per ignorare contenuti come modali e avvisi.
Usa i punti di inserimento per indicare la funzionalità e la direzione del menu a discesa. Si noti che il cursore predefinito si invertirà automaticamente nei menu a comparsa .
Sposta un elemento a sinistra o a destra con una classe. !important
è incluso per evitare problemi di specificità. Le classi possono essere utilizzate anche come mixin.
Impostare un elemento su display: block
e centrarlo tramite margin
. Disponibile come mixin e classe.
Cancella facilmente messaggi float
di posta elettronica aggiungendo .clearfix
all'elemento padre . Utilizza il micro clearfix reso popolare da Nicolas Gallagher. Può essere utilizzato anche come mixin.
Forzare la visualizzazione o la nascondere di un elemento ( anche per le utilità per la lettura dello schermo ) con l'uso di classi .show
e . .hidden
Queste classi usano !important
per evitare conflitti di specificità, proprio come i float veloci . Sono disponibili solo per la commutazione a livello di blocco. Possono essere usati anche come mixin.
.hide
è disponibile, ma non sempre influisce sulle utilità per la lettura dello schermo ed è deprecato a partire dalla v3.0.1. Usa .hidden
o .sr-only
invece.
Inoltre, .invisible
può essere utilizzato per attivare o disattivare solo la visibilità di un elemento, il che significa display
che non viene modificato e l'elemento può comunque influenzare il flusso del documento.
Nascondi un elemento a tutti i dispositivi eccetto per le utilità per la lettura dello schermo con .sr-only
. Combina .sr-only
con .sr-only-focusable
per mostrare di nuovo l'elemento quando è focalizzato (ad esempio da un utente che utilizza solo la tastiera). Necessario per seguire le migliori pratiche di accessibilità . Può essere utilizzato anche come mixin.
Utilizza la .text-hide
classe o il mixin per sostituire il contenuto del testo di un elemento con un'immagine di sfondo.
Per uno sviluppo più rapido e ottimizzato per i dispositivi mobili, utilizza queste classi di utilità per mostrare e nascondere i contenuti per dispositivo tramite query multimediali. Sono incluse anche classi di utilità per alternare il contenuto durante la stampa.
Prova a usarli in modo limitato ed evita di creare versioni completamente diverse dello stesso sito. Invece, usali per completare la presentazione di ogni dispositivo.
Utilizza una o una combinazione delle classi disponibili per alternare il contenuto tra i punti di interruzione del viewport.
Dispositivi extra piccoliTelefoni (<768px) | Piccoli dispositiviCompresse (≥768px) | Dispositivi mediDesktop (≥992px) | Dispositivi di grandi dimensioniDesktop (≥1200px) | |
---|---|---|---|---|
.visible-xs-* |
Visibile | Nascosto | Nascosto | Nascosto |
.visible-sm-* |
Nascosto | Visibile | Nascosto | Nascosto |
.visible-md-* |
Nascosto | Nascosto | Visibile | Nascosto |
.visible-lg-* |
Nascosto | Nascosto | Nascosto | Visibile |
.hidden-xs |
Nascosto | Visibile | Visibile | Visibile |
.hidden-sm |
Visibile | Nascosto | Visibile | Visibile |
.hidden-md |
Visibile | Visibile | Nascosto | Visibile |
.hidden-lg |
Visibile | Visibile | Visibile | Nascosto |
A partire dalla v3.2.0, le .visible-*-*
classi per ogni punto di interruzione sono disponibili in tre varianti, una per ogni display
valore della proprietà CSS elencato di seguito.
Gruppo di classi | CSSdisplay |
---|---|
.visible-*-block |
display: block; |
.visible-*-inline |
display: inline; |
.visible-*-inline-block |
display: inline-block; |
Quindi, per gli xs
schermi extra piccoli ( ), ad esempio, le .visible-*-*
classi disponibili sono: .visible-xs-block
, .visible-xs-inline
, e .visible-xs-inline-block
.
Esistono anche le classi .visible-xs
, .visible-sm
, .visible-md
e .visible-lg
, ma sono obsolete a partire dalla v3.2.0 . Sono approssimativamente equivalenti a .visible-*-block
, ad eccezione di casi speciali aggiuntivi per la commutazione di <table>
elementi correlati.
Simile alle normali classi reattive, usa queste per attivare o disattivare il contenuto per la stampa.
Classi | Browser | Stampa |
---|---|---|
.visible-print-block .visible-print-inline .visible-print-inline-block |
Nascosto | Visibile |
.hidden-print |
Visibile | Nascosto |
La classe .visible-print
esiste anche ma è deprecata a partire dalla v3.2.0. È approssimativamente equivalente a .visible-print-block
, salvo casi speciali aggiuntivi per <table>
elementi correlati.
Ridimensiona il browser o carica su dispositivi diversi per testare le classi di utilità reattive.
I segni di spunta verdi indicano che l'elemento è visibile nella finestra corrente.
Qui, i segni di spunta verdi indicano anche che l'elemento è nascosto nella vista corrente.
Il CSS di Bootstrap è basato su Less, un preprocessore con funzionalità aggiuntive come variabili, mixin e funzioni per la compilazione di CSS. Coloro che desiderano utilizzare i file Less sorgente invece dei nostri file CSS compilati possono utilizzare le numerose variabili e mixin che utilizziamo in tutto il framework.
Le variabili di griglia ei mixin sono trattati nella sezione Sistema di griglia .
Bootstrap può essere utilizzato in almeno due modi: con il CSS compilato o con i file sorgente Less. Per compilare i file Less, consulta la sezione Guida introduttiva per come configurare il tuo ambiente di sviluppo per eseguire i comandi necessari.
Gli strumenti di compilazione di terze parti possono funzionare con Bootstrap, ma non sono supportati dal nostro team principale.
Le variabili vengono utilizzate durante l'intero progetto come un modo per centralizzare e condividere valori di uso comune come colori, spaziatura o pile di caratteri. Per una ripartizione completa, vedere il Customizer .
Utilizza facilmente due combinazioni di colori: scala di grigi e semantica. I colori in scala di grigi forniscono un rapido accesso alle sfumature di nero comunemente utilizzate, mentre la semantica include vari colori assegnati a valori contestuali significativi.
Usa una di queste variabili di colore così come sono o riassegnale a variabili più significative per il tuo progetto.
Una manciata di variabili per personalizzare rapidamente gli elementi chiave dello scheletro del tuo sito.
Disegna facilmente i tuoi link con il colore giusto con un solo valore.
Nota che @link-hover-color
utilizza una funzione, un altro fantastico strumento di Less, per creare automaticamente il giusto colore al passaggio del mouse. È possibile utilizzare darken
, lighten
, saturate
e desaturate
.
Imposta facilmente il tuo carattere tipografico, la dimensione del testo, l'interlinea e altro con alcune rapide variabili. Bootstrap ne fa uso anche per fornire semplici mixin tipografici.
Due variabili rapide per personalizzare la posizione e il nome del file delle tue icone.
I componenti di Bootstrap utilizzano alcune variabili predefinite per impostare valori comuni. Ecco i più usati.
I mixin del fornitore sono mixin per supportare più browser includendo tutti i prefissi del fornitore pertinenti nel CSS compilato.
Ripristina il modello della scatola dei tuoi componenti con un singolo mixin. Per il contesto, vedere questo utile articolo di Mozilla .
Il mixin è deprecato a partire dalla v3.2.0, con l'introduzione di Autoprefixer. Per preservare la compatibilità con le versioni precedenti, Bootstrap continuerà a utilizzare il mixin internamente fino a Bootstrap v4.
Oggi tutti i browser moderni supportano la proprietà senza prefisso border-radius
. In quanto tale, non esiste alcun .border-radius()
mixin, ma Bootstrap include scorciatoie per arrotondare rapidamente due angoli su un particolare lato di un oggetto.
Se il tuo pubblico di destinazione utilizza i browser e i dispositivi più recenti e migliori, assicurati di utilizzare la box-shadow
proprietà da sola. Se hai bisogno di supporto per dispositivi Android precedenti (pre-v4) e iOS (pre-iOS 5), usa il mixin deprecato per raccogliere il -webkit
prefisso richiesto.
Il mixin è deprecato a partire dalla v3.1.0, poiché Bootstrap non supporta ufficialmente le piattaforme obsolete che non supportano la proprietà standard. Per preservare la compatibilità con le versioni precedenti, Bootstrap continuerà a utilizzare il mixin internamente fino a Bootstrap v4.
Assicurati di utilizzare i rgba()
colori nelle ombre della tua scatola in modo che si fondano il più perfettamente possibile con gli sfondi.
Mixin multipli per flessibilità. Imposta tutte le informazioni di transizione con una o specifica un ritardo e una durata separati secondo necessità.
I mixin sono deprecati a partire dalla v3.2.0, con l'introduzione di Autoprefixer. Per preservare la compatibilità con le versioni precedenti, Bootstrap continuerà a utilizzare i mixin internamente fino a Bootstrap v4.
Ruota, ridimensiona, trasla (sposta) o inclina qualsiasi oggetto.
I mixin sono deprecati a partire dalla v3.2.0, con l'introduzione di Autoprefixer. Per preservare la compatibilità con le versioni precedenti, Bootstrap continuerà a utilizzare i mixin internamente fino a Bootstrap v4.
Un singolo mixin per l'utilizzo di tutte le proprietà di animazione di CSS3 in una dichiarazione e altri mixin per le singole proprietà.
I mixin sono deprecati a partire dalla v3.2.0, con l'introduzione di Autoprefixer. Per preservare la compatibilità con le versioni precedenti, Bootstrap continuerà a utilizzare i mixin internamente fino a Bootstrap v4.
Imposta l'opacità per tutti i browser e fornisci un filter
fallback per IE8.
Fornisci il contesto per i controlli dei moduli all'interno di ogni campo.
Genera colonne tramite CSS all'interno di un singolo elemento.
Trasforma facilmente due colori qualsiasi in una sfumatura di sfondo. Diventa più avanzato e imposta una direzione, usa tre colori o usa una sfumatura radiale. Con un singolo mixin ottieni tutte le sintassi prefissate di cui avrai bisogno.
Puoi anche specificare l'angolo di un gradiente lineare standard a due colori:
Se hai bisogno di un gradiente di stile a strisce da barbiere, anche questo è facile. Basta specificare un singolo colore e sovrapporremo una striscia bianca traslucida.
Alza la posta e usa invece tre colori. Imposta il primo colore, il secondo colore, il colore stop del secondo colore (un valore percentuale come 25%) e il terzo colore con questi mixin:
Dritta! Se dovessi mai aver bisogno di rimuovere un gradiente, assicurati di rimuovere qualsiasi IE specifico filter
che potresti aver aggiunto. Puoi farlo usando il .reset-filter()
mixin insieme a background-image: none;
.
I mixin di utilità sono mixin che combinano proprietà CSS altrimenti non correlate per raggiungere un obiettivo o un'attività specifici.
Dimentica l'aggiunta class="clearfix"
a qualsiasi elemento e aggiungi invece il .clearfix()
mixin dove appropriato. Utilizza il micro clearfix di Nicolas Gallagher .
Centrare rapidamente qualsiasi elemento all'interno del suo genitore. Richiede width
o max-width
da impostare.
Specificare le dimensioni di un oggetto più facilmente.
Configura facilmente le opzioni di ridimensionamento per qualsiasi area di testo o qualsiasi altro elemento. Predefinito per il normale comportamento del browser ( both
).
Tronca facilmente il testo con i puntini di sospensione con un solo mixin. Richiede che l'elemento sia block
o inline-block
livello.
Specificare due percorsi di immagine e le dimensioni dell'immagine @1x e Bootstrap fornirà una query multimediale @2x. Se hai molte immagini da servire, prendi in considerazione la possibilità di scrivere manualmente il CSS dell'immagine retina in un'unica query multimediale.
Sebbene Bootstrap sia basato su Less, ha anche un port Sass ufficiale . Lo manteniamo in un repository GitHub separato e gestiamo gli aggiornamenti con uno script di conversione.
Poiché il port Sass ha un repository separato e serve un pubblico leggermente diverso, i contenuti del progetto differiscono notevolmente dal progetto Bootstrap principale. Ciò garantisce che la porta Sass sia il più compatibile possibile con il maggior numero possibile di sistemi basati su Sass.
Sentiero | Descrizione |
---|---|
lib/ |
Codice Ruby gem (configurazione Sass, integrazioni Rails e Compass) |
tasks/ |
Script di conversione (passando a monte da Less a Sass) |
test/ |
Prove di compilazione |
templates/ |
Manifesto del pacchetto Compass |
vendor/assets/ |
Sass, JavaScript e file di caratteri |
Rakefile |
Attività interne, come rastrellare e convertire |
Visita il repository GitHub del port Sass per vedere questi file in azione.
Per informazioni su come installare e utilizzare Bootstrap for Sass, consultare il file readme del repository GitHub . È la fonte più aggiornata e include informazioni da utilizzare con i progetti Rails, Compass e Sass standard.