Aggiornamento 2019 - Bootstrap 4
Sto rivisitando questa domanda di personalizzazione di Bootstrap per 4.x, che ora utilizza SASS invece di LESS. In generale, ci sono 2 modi per personalizzare Bootstrap ...
1. Sostituzioni CSS semplici
Un modo per personalizzare è semplicemente usare CSS per sostituire Bootstrap CSS. Per la manutenibilità, le personalizzazioni CSS vengono inserite in un custom.css
file separato , in modo che bootstrap.css
rimanga invariato. Il riferimento a quanto custom.css
segue dopo il bootstrap.css
per il funzionamento degli override ...
<link rel="stylesheet" type="text/css" href="css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" href="css/custom.css">
Basta aggiungere le modifiche necessarie nel CSS personalizzato. Per esempio...
/* remove rounding from cards, buttons and inputs */
.card, .btn, .form-control {
border-radius: 0;
}
Prima ( bootstrap.css
)
Dopo (con custom.css
)
Quando si effettuano le personalizzazioni, è necessario comprendere la specificità CSS . Sostituisce la custom.css
necessità di utilizzare selettori specifici come il file bootstrap.css
.
Nota che non è necessario utilizzarlo !important
nel CSS personalizzato, a meno che tu non stia sovrascrivendo una delle classi di Bootstrap Utility . La specificità CSS
funziona sempre per una classe CSS per sovrascrivere un'altra.
2. Personalizza utilizzando SASS
Se hai familiarità con SASS (e dovresti usare questo metodo), puoi personalizzare Bootstrap con il tuo custom.scss
. C'è una sezione nei documenti di Bootstrap che lo spiega, tuttavia i documenti non spiegano come utilizzare le variabili esistenti nel tuo file custom.scss
. Ad esempio, cambiamo il colore di sfondo del corpo in #eeeeee
e cambiamo / sovrascriviamo il colore primary
contestuale blu nella $purple
variabile di Bootstrap ...
/* custom.scss */
/* import the necessary Bootstrap files */
@import "bootstrap/functions";
@import "bootstrap/variables";
/* -------begin customization-------- */
/* simply assign the value */
$body-bg: #eeeeee;
/* use a variable to override primary */
$theme-colors: (
primary: $purple
);
/* -------end customization-------- */
/* finally, import Bootstrap to set the changes! */
@import "bootstrap";
Funziona anche per creare nuove classi personalizzate . Ad esempio, qui aggiungo purple
ai colori del tema che crea tutto il CSS per btn-purple
, text-purple
, bg-purple
, alert-purple
, ecc ...
/* add a new purple custom color */
$theme-colors: (
purple: $purple
);
https://www.codeply.com/go/7XonykXFvP
Con SASS devi @importare bootstrap dopo le personalizzazioni per farle funzionare! Una volta che il SASS è stato compilato in CSS ( questo deve essere fatto usando un compilatore SASS node-sass, gulp-sass, npm webpack, ecc. ), Il CSS risultante è il Bootstrap personalizzato. Se non hai familiarità con SASS, puoi personalizzare Bootstrap utilizzando uno strumento come questo generatore di temi che ho creato.
Demo Bootstrap personalizzato (SASS)
Nota: a differenza di 3.x, Bootstrap 4.x non offre uno strumento di personalizzazione ufficiale . Tuttavia, puoi scaricare solo la griglia CSS o utilizzare un altro strumento di build personalizzato 4.x per ricostruire Bootstrap 4 CSS come desideri.
Correlati:
Come estendere / modificare (personalizzare) Bootstrap 4 con SASS
Come cambiare il colore primario del bootstrap?
Come creare un nuovo set di stili di colore in Bootstrap 4 con sass
Come personalizzare Bootstrap