S'està migrant a la v4
Bootstrap 4 és una reescriptura important de tot el projecte. Els canvis més notables es resumeixen a continuació, seguits de canvis més específics als components rellevants.
Passant de la Beta 3 a la nostra versió estable v4.0, no hi ha canvis de ruptura, però hi ha alguns canvis notables.
-
S'han corregit les utilitats d'impressió trencades. Anteriorment, l'ús d'una
.d-print-*
classe anul·laria inesperadament qualsevol altra.d-*
classe. Ara, coincideixen amb les nostres altres utilitats de visualització i només s'apliquen a aquest mitjà (@media print
). -
Les utilitats de visualització d'impressió disponibles ampliades perquè coincideixin amb altres utilitats. La versió beta 3 i més antiga només tenia
block
,inline-block
,inline
inone
. Stable v4 afegitflex
,inline-flex
,table
,table-row
itable-cell
. -
S'ha corregit la visualització prèvia d'impressió als navegadors amb nous estils d'impressió que especifiquen
@page
size
.
Tot i que la Beta 2 va veure la major part dels nostres canvis de ruptura durant la fase beta, però encara en tenim alguns que calia resoldre a la versió Beta 3. Aquests canvis s'apliquen si actualitzeu a la Beta 3 des de la Beta 2 o qualsevol versió anterior de Bootstrap.
- S'ha eliminat la
$thumbnail-transition
variable no utilitzada. No estàvem fent la transició de res, així que només era un codi addicional. - El paquet npm ja no inclou cap fitxer que no sigui els nostres fitxers font i dist; si confiàveu en ells i esteu executant els nostres scripts mitjançant la
node_modules
carpeta, hauríeu d'adaptar el vostre flux de treball.
-
Reescriu les caselles de selecció i les ràdios personalitzades i predeterminades. Ara, tots dos tenen una estructura HTML coincident (exterior
<div>
amb germà<input>
i<label>
) i els mateixos estils de disseny (apilat per defecte, en línia amb la classe modificadora). Això ens permet dissenyar l'etiqueta en funció de l'estat de l'entrada, simplificant el suport per a l'disabled
atribut (abans requeria una classe pare) i donant millor suport a la nostra validació del formulari.Com a part d'això, hem canviat el CSS per gestionar diversos
background-image
s en caselles de verificació i ràdios de formularis personalitzats. Anteriorment, l'.custom-control-indicator
element ara eliminat tenia el color de fons, el degradat i la icona SVG. Personalitzar el degradat de fons significava substituir-los tots cada vegada que només calia canviar-ne un. Ara, tenim.custom-control-label::before
per al farciment i el degradat i.custom-control-label::after
maneja la icona.Per fer una comprovació personalitzada en línia, afegiu
.custom-control-inline
. -
Selector actualitzat per als grups de botons basats en l'entrada. En lloc de
[data-toggle="buttons"] { }
per a l'estil i el comportament, utilitzem l'data
atribut només per als comportaments JS i confiem en una nova.btn-group-toggle
classe per a l'estil. -
Eliminat
.col-form-legend
a favor d'un lleugerament millorat.col-form-label
. D'aquesta manera.col-form-label-sm
i.col-form-label-lg
es pot utilitzar en<legend>
elements amb facilitat. -
Les entrades de fitxers personalitzades van rebre un canvi a la seva
$custom-file-text
variable Sass. Ja no és un mapa Sass imbricat i ara només alimenta una cadena: elBrowse
botó, ja que ara és l'únic pseudoelement generat a partir del nostre Sass. ElChoose file
text ara prové del.custom-file-label
.
-
Els complements del grup d'entrada són ara específics per a la seva ubicació en relació a una entrada. Hem baixat
.input-group-addon
i.input-group-btn
per dues classes noves,.input-group-prepend
i.input-group-append
. Ara heu d'utilitzar explícitament un adjunt o un antecedent, simplificant gran part del nostre CSS. Dins d'un adjunt o antecedent, col·loqueu els vostres botons tal com existirien en qualsevol altre lloc, però embolcalleu el text amb.input-group-text
. -
Ara s'admeten els estils de validació, així com diverses entrades (tot i que només podeu validar una entrada per grup).
-
Les classes de mida han d'estar al pare
.input-group
i no als elements del formulari individuals.
Durant la versió beta, pretenem que no hi hagi canvis de ruptura. Tanmateix, les coses no sempre surten com estava previst. A continuació es mostren els canvis més importants que cal tenir en compte quan passeu de la Beta 1 a la Beta 2.
- S'ha eliminat
$badge-color
la variable i el seu ús a.badge
. Utilitzem una funció de contrast de color per triar uncolor
basat en elbackground-color
, de manera que la variable no és necessària. - S'ha canviat el nom
grayscale()
de la funció agray()
per evitar trencar el conflicte amb elgrayscale
filtre natiu CSS. - S'ha canviat el nom
.table-inverse
de.thead-inverse
, i.thead-default
a.*-dark
i.*-light
, fent coincidir els nostres esquemes de colors utilitzats en altres llocs. - Les taules responsives ara generen classes per a cada punt d'interrupció de la graella. Això trenca amb la beta 1 perquè el
.table-responsive
que heu estat utilitzant és més semblant a.table-responsive-md
. Ara podeu utilitzar.table-responsive
o.table-responsive-{sm,md,lg,xl}
segons sigui necessari. - S'ha eliminat el suport de Bower ja que el gestor de paquets ha quedat obsolet per a alternatives (per exemple, Yarn o npm). Vegeu bower/bower#2298 per a més detalls.
- Bootstrap encara requereix jQuery 1.9.1 o superior, però se us recomana que utilitzeu la versió 3.x ja que els navegadors compatibles amb v3.x són els que admet Bootstrap i v3.x té algunes solucions de seguretat.
- S'ha eliminat la
.form-control-label
classe no utilitzada. Si heu fet ús d'aquesta classe, era un duplicat de la.col-form-label
classe que centrava verticalment a<label>
amb la seva entrada associada en dissenys de formulari horitzontal. - S'ha canviat
color-yiq
d'un mixin que incloïa lacolor
propietat a una funció que retorna un valor, cosa que us permet utilitzar-lo per a qualsevol propietat CSS. Per exemple, en comptes decolor-yiq(#000)
, escriuriescolor: color-yiq(#000);
.
- S'ha introduït un nou
pointer-events
ús en modalitats. L'exterior.modal-dialog
passa per esdeveniments ambpointer-events: none
per al maneig de clics personalitzat (permet només escoltar-lo.modal-backdrop
per qualsevol clic) i després ho contraresta per al real.modal-content
ambpointer-events: auto
.
Aquests són els articles de bitllet importants dels quals voldreu tenir en compte quan passeu de la v3 a la v4.
- S'ha eliminat el suport IE8, IE9 i iOS 6. v4 ara només és IE10+ i iOS 7+. Per als llocs que necessiten qualsevol d'aquests, utilitzeu la v3.
- S'ha afegit suport oficial per al navegador i WebView d'Android v5.0 Lollipop. Les versions anteriors del navegador d'Android i WebView només són compatibles de manera no oficial.
- Flexbox està activat per defecte. En general, això significa un allunyament dels flotadors i més entre els nostres components.
- S'ha canviat de Less a Sass per als nostres fitxers CSS d'origen.
- S'ha canviat de
px
arem
la nostra unitat CSS principal, tot i que els píxels encara s'utilitzen per a consultes multimèdia i per al comportament de la quadrícula, ja que les finestres visuals dels dispositius no es veuen afectades per la mida del tipus. - La mida global del tipus de lletra ha augmentat de
14px
a16px
. - S'han renovat els nivells de quadrícula per afegir una cinquena opció (s'adreça a dispositius més petits a la part
576px
inferior i inferior) i s'ha eliminat l'-xs
infix d'aquestes classes. Exemple:.col-6.col-sm-4.col-md-3
. - S'ha substituït el tema opcional separat per opcions configurables mitjançant variables SCSS (per exemple,
$enable-gradients: true
). - Sistema de compilació revisat per utilitzar una sèrie d'scripts npm en lloc de Grunt. Consulteu
package.json
tots els scripts o el nostre projecte readme per a les necessitats de desenvolupament local. - Ja no s'admet l'ús de Bootstrap que no respon.
- S'ha eliminat el personalitzador en línia a favor d'una documentació de configuració més extensa i de les compilacions personalitzades.
- S'han afegit desenes de noves classes d'utilitat per a parells de propietat-valor CSS comuns i dreceres d'espaiat entre marges i farcits.
- S'ha mogut a flexbox.
- S'ha afegit suport per a flexbox en els mixins de graella i classes predefinides.
- Com a part de flexbox, inclou suport per a classes d'alineació vertical i horitzontal.
- S'han actualitzat els noms de les classes de quadrícula i un nou nivell de quadrícula.
- S'ha afegit un nou
sm
nivell de quadrícula a continuació768px
per obtenir un control més granular. Ara tenimxs
,sm
,md
,lg
ixl
. Això també significa que cada nivell s'ha augmentat un nivell (per tant,.col-md-6
a la v3 ara és.col-lg-6
a la v4). xs
Les classes de quadrícula s'han modificat per no requerir que l'infix representi amb més precisió que comencen a aplicar estilsmin-width: 0
i no un valor de píxel establert. En lloc de.col-xs-6
, és ara.col-6
. Tots els altres nivells de quadrícula requereixen l'infix (per exemple,sm
).
- S'ha afegit un nou
- Mides de quadrícula, mixins i variables actualitzades.
- Els canals de quadrícula ara tenen un mapa Sass perquè pugueu especificar amplades específiques de canalons a cada punt d'interrupció.
- Mixins de graella actualitzats per utilitzar un
make-col-ready
mixin de preparació i unmake-col
per configurarflex
imax-width
per a la mida de la columna individual. - S'han canviat els punts d'interrupció de la consulta de mitjans del sistema de quadrícula i l'amplada dels contenidors per tenir en compte el nou nivell de quadrícula i garantir que les columnes siguin divisibles uniformement per
12
l'amplada màxima. - Els punts d'interrupció de la quadrícula i les amplades dels contenidors ara es gestionen mitjançant mapes Sass (
$grid-breakpoints
i$container-max-widths
) en lloc d'un grapat de variables separades. Aquestes substitueixen les@screen-*
variables completament i us permeten personalitzar completament els nivells de la graella. - Les consultes dels mitjans també han canviat. En lloc de repetir les nostres declaracions de consulta de mitjans amb el mateix valor cada vegada, ara tenim
@include media-breakpoint-up/down/only
. Ara, en lloc d'escriure@media (min-width: @screen-sm-min) { ... }
, pots escriure@include media-breakpoint-up(sm) { ... }
.
- S'han deixat caure panells, miniatures i pous per a un nou component global, les targetes .
- S'ha deixat caure el tipus de lletra de la icona Glyphicons. Si necessiteu icones, algunes opcions són:
- la versió amunt de Glyphicons
- Octicons
- Font Genial
- Consulteu la pàgina Ampliar per obtenir una llista d'alternatives. Teniu suggeriments addicionals? Obriu un problema o PR.
- S'ha deixat caure el connector Affix jQuery.
- Recomanem utilitzar -lo en el
position: sticky
seu lloc. Consulteu l'entrada HTML5 per obtenir més informació i recomanacions específiques d'emplenament polivalent. Un suggeriment és utilitzar una@supports
regla per implementar-la (per exemple,@supports (position: sticky) { ... }
)/ - Si utilitzeu Affix per aplicar estils addicionals
position
que no siguin estils, és possible que els polyfills no admetin el vostre cas d'ús. Una opció per a aquests usos és la biblioteca ScrollPos-Styler de tercers .
- Recomanem utilitzar -lo en el
- S'ha deixat caure el component del cercapersones, ja que es tractava bàsicament de botons lleugerament personalitzats.
- S'han refactoritzat gairebé tots els components per utilitzar més selectors de classe no imbricats en lloc de selectors secundaris massa específics.
Aquesta llista destaca els canvis clau per component entre v3.xx i v4.0.0.
El nou a Bootstrap 4 és Reboot , un nou full d'estil que es basa en Normalize amb els nostres propis estils de restabliment una mica opiniosos. Els selectors que apareixen en aquest fitxer només utilitzen elements; aquí no hi ha classes. Això aïlla els nostres estils de restabliment dels nostres estils de components per a un enfocament més modular. Alguns dels restabliments més importants que inclou són el box-sizing: border-box
canvi, passar de em
unitats rem
a molts elements, estils d'enllaç i molts restabliments d'elements de formulari.
- S'han mogut totes les
.text-
utilitats al_utilities.scss
fitxer. - S'ha eliminat
.page-header
perquè els seus estils es poden aplicar mitjançant utilitats. .dl-horizontal
s'ha deixat caure..row
En comptes d' això, utilitzeu<dl>
i feu servir classes de columnes de graella (o mixins) a les seves classes<dt>
i<dd>
als fills.- Cites de bloc redissenyades, movent els seus estils de l'
<blockquote>
element a una sola classe,.blockquote
. S'ha eliminat el.blockquote-reverse
modificador per a les utilitats de text. .list-inline
ara requereix que els elements de la llista secundaria tinguin.list-inline-item
aplicada la nova classe.
- S'ha canviat de nom
.img-responsive
a.img-fluid
. - S'ha canviat de nom
.img-rounded
a.rounded
- S'ha canviat de nom
.img-circle
a.rounded-circle
- Gairebé totes les instàncies del
>
selector s'han eliminat, és a dir, les taules imbricades ara heretaran automàticament els estils dels seus pares. Això simplifica molt els nostres selectors i les personalitzacions potencials. - S'ha canviat el nom
.table-condensed
a.table-sm
per coherència. - S'ha afegit una nova
.table-inverse
opció. - S'han afegit modificadors de capçalera de taula:
.thead-default
i.thead-inverse
. - S'han canviat el nom de les classes contextuals perquè tinguin un
.table-
-prefix. Per tant.active
,.success
,.warning
,.danger
i.info
a.table-active
,.table-success
,.table-warning
,.table-danger
i.table-info
.
- L'element mogut es restableix al
_reboot.scss
fitxer. - S'ha canviat de nom
.control-label
a.col-form-label
. - S'ha canviat de nom
.input-lg
i.input-sm
a.form-control-lg
i.form-control-sm
, respectivament. - Classes abandonades
.form-group-*
per simplicitat. Feu servir.form-control-*
les classes ara. - El va deixar caure
.help-block
i el va substituir.form-text
per text d'ajuda a nivell de bloc. Per al text d'ajuda en línia i altres opcions flexibles, utilitzeu classes d'utilitat com.text-muted
. - Caigut
.radio-inline
i.checkbox-inline
. - Consolidat
.checkbox
i.radio
en.form-check
les diferents.form-check-*
classes. - Formes horitzontals revisades:
- S'ha eliminat el
.form-horizontal
requisit de classe. .form-group
ja no s'aplica estils del.row
via mixin, per la qual.row
cosa ara és necessari per a dissenys de quadrícula horitzontal (p. ex.,<div class="form-group row">
).- S'ha afegit una nova
.col-form-label
classe per centrar verticalment les etiquetes amb.form-control
s. - S'ha afegit una novetat
.form-row
per a dissenys de formularis compactes amb les classes de quadrícula (canvia el teu.row
per a.form-row
i segueix).
- S'ha eliminat el
- S'ha afegit suport de formularis personalitzats (per a caselles de selecció, ràdios, seleccions i entrades de fitxers).
- S'han substituït les classes
.has-error
,.has-warning
, i.has-success
amb la validació de formularis HTML5 mitjançant CSS:invalid
i:valid
pseudoclasses. - S'ha canviat de nom
.form-control-static
a.form-control-plaintext
.
- S'ha canviat de nom
.btn-default
a.btn-secondary
. - Va deixar la
.btn-xs
classe completament, ja que.btn-sm
és proporcionalment molt més petita que la v3. - S'ha eliminat la funció de botó
button.js
amb estat del connector jQuery. Això inclou els mètodes$().button(string)
i .$().button('reset')
Aconsellem utilitzar una mica de JavaScript personalitzat, que tindrà l'avantatge de comportar-se exactament com voleu.- Tingueu en compte que les altres funcions del connector (caselles de selecció de botons, ràdios de botons, botons d'activació única) s'han conservat a la v4.
- Canvia els botons
[disabled]
a:disabled
com IE9+ admet:disabled
. Tanmateixfieldset[disabled]
, encara és necessari perquè els conjunts de camps desactivats natius encara tenen errors a IE11 .
- Reescriure el component amb flexbox.
- Eliminat
.btn-group-justified
. Com a reemplaçament, podeu utilitzar<div class="btn-group d-flex" role="group"></div>
com a embolcall al voltant d'elements amb.w-100
. - S'ha abandonat la
.btn-group-xs
classe completament donada l'eliminació de.btn-xs
. - S'ha eliminat l'espaiat explícit entre els grups de botons a les barres d'eines de botons; Utilitzeu ara les utilitats de marge.
- Documentació millorada per utilitzar-la amb altres components.
- S'han canviat de selectors pares a classes singulars per a tots els components, modificadors, etc.
- Estils desplegables simplificats perquè ja no s'enviïn amb fletxes cap amunt o cap avall adjuntes al menú desplegable.
- Els desplegables es poden crear amb
<div>
s o<ul>
s ara. - S'han reconstruït els estils desplegables i el marcatge per oferir un suport fàcil i integrat per als
<a>
elements<button>
desplegables basats. - S'ha canviat de nom
.divider
a.dropdown-divider
. - Els elements desplegables ara requereixen
.dropdown-item
. - Els canvis desplegables ja no requereixen un
<span class="caret"></span>
; això ara es proporciona automàticament mitjançant CSS::after
a.dropdown-toggle
.
- S'ha afegit un
576px
punt d'interrupció de la graella nou com asm
, el que significa que ara hi ha cinc nivells totals (xs
,sm
,md
,lg
ixl
). - S'han canviat el nom de les classes modificadores de quadrícula sensibles de
.col-{breakpoint}-{modifier}-{size}
a.{modifier}-{breakpoint}-{size}
per a classes de quadrícula més senzilles. - S'han eliminat les classes modificadores push i pull per a les noves classes alimentades amb flexbox
order
. Per exemple, en comptes de.col-8.push-4
i.col-4.pull-8
, utilitzaríeu.col-8.order-2
i.col-4.order-1
. - S'han afegit classes d'utilitat flexbox per al sistema de xarxa i components.
- Reescriure el component amb flexbox.
- Substituït
a.list-group-item
per una classe explícita,.list-group-item-action
, per a les versions d'enllaços i botons d'estil dels elements del grup de llista. - S'ha afegit
.list-group-flush
una classe per utilitzar-la amb targetes.
- Reescriure el component amb flexbox.
- Si es passa a flexbox, és probable que l'alineació de les icones d'oscar a la capçalera estigui trencada, ja que ja no utilitzem flotants. El contingut flotat és el primer, però amb flexbox això ja no és així. Actualitzeu les vostres icones d'omissió per corregir-les després dels títols modals.
- L'
remote
opció (que es podria utilitzar per carregar i injectar automàticament contingut extern en un modal) i l'loaded.bs.modal
esdeveniment corresponent es van eliminar. En lloc d'això, recomanem que utilitzeu una plantilla del costat del client o un marc d'enllaç de dades, o que truqueu vosaltres mateixos a jQuery.load .
- Reescriure el component amb flexbox.
- S'han eliminat gairebé tots els
>
selectors per a un estil més senzill mitjançant classes no imbricades. - En lloc de selectors específics d'HTML com
.nav > li > a
, fem servir classes separades per a.nav
s,.nav-item
s i.nav-link
s. Això fa que el vostre HTML sigui més flexible alhora que augmenta l'extensibilitat.
La barra de navegació s'ha reescrit completament a flexbox amb un suport millorat per a l'alineació, la capacitat de resposta i la personalització.
- Els comportaments de la barra de navegació responsives ara s'apliquen a la
.navbar
classe mitjançant el requisit.navbar-expand-{breakpoint}
, on trieu on col·lapsar la barra de navegació. Anteriorment es tractava d'una modificació menys variable i requeria una recompilació. .navbar-default
és ara.navbar-light
, encara que.navbar-dark
segueix sent el mateix. Un d'aquests és necessari a cada barra de navegació. Tanmateix, aquestes classes ja no estableixenbackground-color
s; en canvi, essencialment només afectencolor
.- Ara les barres de navegació requereixen una declaració de fons d'algun tipus. Trieu entre les nostres utilitats de fons (
.bg-*
) o configureu la vostra amb les classes lleugeres/inverses anteriors per a una personalització boja . - Donats els estils de flexbox, les barres de navegació ara poden utilitzar les utilitats flexbox per a opcions d'alineació fàcils.
.navbar-toggle
és ara.navbar-toggler
i té diferents estils i marcatge intern (no més tres<span>
s).- Va deixar la
.navbar-form
classe completament. Ja no cal; en comptes d'això, només cal que utilitzeu.form-inline
i apliqueu les utilitats de marge segons sigui necessari. - Les barres de navegació ja no inclouen
margin-bottom
oborder-radius
de manera predeterminada. Utilitzeu les utilitats segons sigui necessari. - Tots els exemples que inclouen barres de navegació s'han actualitzat per incloure un marcatge nou.
- Reescriure el component amb flexbox.
- Ara es requereixen classes explícites (
.page-item
,.page-link
) als descendents de.pagination
s - Es va deixar caure el
.pager
component completament, ja que era poc més que botons de contorn personalitzats.
- Ara es requereix una classe explícita,
.breadcrumb-item
, als descendents del.breadcrumb
s
- Consolidat
.label
i.badge
per desambiguar de l'<label>
element i simplificar els components relacionats. - S'ha afegit
.badge-pill
com a modificador per a l'aspecte arrodonit de "píndola". - Les insígnies ja no surten automàticament als grups de llistes i altres components. Ara es requereixen classes d'utilitat per a això.
.badge-default
s'ha eliminat i.badge-secondary
afegit per fer coincidir les classes de modificadors de components utilitzades en altres llocs.
S'ha eliminat completament per al nou component de la targeta.
.panel
a.card
, ara construït amb flexbox..panel-default
retirat i sense substitució..panel-group
retirat i sense substitució..card-group
no és un substitut, és diferent..panel-heading
a.card-header
.panel-title
a.card-title
. Depenent de l'aspecte desitjat, també podeu utilitzar elements o classes d'encapçalament (p. ex<h3>
. ,.h3
) o elements o classes en negreta (p. ex<strong>
. ,<b>
,.font-weight-bold
). Tingueu en compte que.card-title
, tot i que té un nom semblant, produeix un aspecte diferent de.panel-title
..panel-body
a.card-body
.panel-footer
a.card-footer
.panel-primary
,.panel-success
,.panel-info
,.panel-warning
, i.panel-danger
s'han eliminat per a.bg-
,.text-
, i.border
les utilitats generades a partir del nostre$theme-colors
mapa Sass.
.progress-bar-*
S'han substituït les classes contextuals per.bg-*
utilitats. Per exemple,class="progress-bar progress-bar-danger"
es converteix enclass="progress-bar bg-danger"
.- Substituït
.active
per barres de progrés animades amb.progress-bar-animated
.
- S'ha revisat tot el component per simplificar el disseny i l'estil. Tenim menys estils per substituir, nous indicadors i noves icones.
- Tot el CSS s'ha anul·lat i s'ha canviat de nom, assegurant-se que cada classe té el prefix
.carousel-
.- Per als elements del carrusel,
.next
,.prev
,.left
, i.right
són ara.carousel-item-next
,.carousel-item-prev
,.carousel-item-left
, i.carousel-item-right
. .item
també és ara.carousel-item
.- Per als controls anteriors/següents,
.carousel-control.right
i.carousel-control.left
són ara.carousel-control-next
i.carousel-control-prev
, és a dir, ja no requereixen una classe base específica.
- Per als elements del carrusel,
- S'han eliminat tots els estils responsius, s'afereixen a les utilitats (p. ex., mostrant subtítols en determinades finestres) i estils personalitzats segons sigui necessari.
- S'han eliminat les substitucions d'imatges per a les imatges dels elements del carrusel, deferint-se als serveis públics.
- S'ha ajustat l'exemple del carrusel per incloure el nou marcatge i estils.
- S'ha eliminat el suport per a taules imbricades amb estil. Tots els estils de taula s'hereten ara a v4 per a selectors més senzills.
- S'ha afegit una variant de taula inversa.
- Mostra, amagat i més:
- S'han fet que les utilitats de visualització responguin (per exemple,
.d-none
id-{sm,md,lg,xl}-none
). - S'han eliminat la major part de les
.hidden-*
utilitats per a les noves utilitats de visualització . Per exemple, en comptes de.hidden-sm-up
, utilitzeu.d-sm-none
. S'han canviat el nom de les.hidden-print
utilitats per utilitzar l'esquema de noms de les utilitats de visualització. Més informació a la secció Utilitats responsives d'aquesta pàgina. - S'han afegit
.float-{sm,md,lg,xl}-{left,right,none}
classes per a flotadors responsius i s'han eliminat.pull-left
i.pull-right
ja que són redundants a.float-left
i.float-right
.
- S'han fet que les utilitats de visualització responguin (per exemple,
- Tipus:
- S'han afegit variacions sensibles a les nostres classes d'alineació de text
.text-{sm,md,lg,xl}-{left,center,right}
.
- S'han afegit variacions sensibles a les nostres classes d'alineació de text
- Alineació i espaiat:
- S'han afegit noves utilitats de marge de resposta i farciment per a tots els costats, a més de taquigrafs verticals i horitzontals.
- S'ha afegit una càrrega de vaixells d' utilitats flexbox .
- Abandonat
.center-block
per la nova.mx-auto
classe.
- Clearfix s'ha actualitzat per eliminar la compatibilitat amb versions anteriors del navegador.
Els mixins de prefix de proveïdor de Bootstrap 3 , que estaven obsolets a la v3.2.0, s'han eliminat a Bootstrap 4. Com que utilitzem Autoprefixer , ja no són necessaris.
S'han eliminat els mixins següents : animation
, animation-delay
, animation-direction
, animation-duration
, animation-fill-mode
, animation-iteration-count
, animation-name
, animation-timing-function
, backface-visibility
, box-sizing
, content-columns
, hyphens
, opacity
, perspective
, perspective-origin
, rotate
, rotateX
, rotateY
, scale
, scaleX
, scaleY
, skew
, transform-origin
, transition-delay
, transition-duration
, transition-property
, transition-timing-function
, transition-transform
,translate
translate3d
user-select
La nostra documentació també va rebre una actualització general. Aquí teniu el baix:
- Encara estem utilitzant Jekyll, però tenim connectors a la barreja:
bugify.rb
s'utilitza per llistar de manera eficient les entrades a la nostra pàgina d'errors del navegador .example.rb
és una bifurcació personalitzada delhighlight.rb
connector predeterminat, que permet un maneig de codi d'exemple més fàcil.callout.rb
és una bifurcació personalitzada similar, però dissenyada per als nostres textos especials de documents.- jekyll-toc s'utilitza per generar la nostra taula de continguts.
- Tot el contingut de documents s'ha reescrit a Markdown (en lloc d'HTML) per facilitar l'edició.
- Les pàgines s'han reorganitzat per a un contingut més senzill i una jerarquia més accessible.
- Hem passat de CSS normal a SCSS per aprofitar al màxim les variables, mixins i molt més de Bootstrap.
Totes les @screen-
variables s'han eliminat a la v4.0.0. Feu servir els mixins media-breakpoint-up()
, media-breakpoint-down()
, o Sass o el mapa Sass.media-breakpoint-only()
$grid-breakpoints
Les nostres classes d'utilitat responsives s'han eliminat en gran part a favor de les display
utilitats explícites.
- Les classes
.hidden
i.show
s'han eliminat perquè entraven en conflicte amb els mètodes$(...).hide()
i jQuery.$(...).show()
En lloc d'això, proveu de canviar l'[hidden]
atribut o utilitzeu estils en línia comstyle="display: none;"
istyle="display: block;"
. .hidden-
S'han eliminat totes les classes, tret de les utilitats d'impressió que s'han canviat de nom.- S'ha eliminat de la v3:
.hidden-xs
.hidden-sm
.hidden-md
.hidden-lg
.visible-xs-block
.visible-xs-inline
.visible-xs-inline-block
.visible-sm-block
.visible-sm-inline
.visible-sm-inline-block
.visible-md-block
.visible-md-inline
.visible-md-inline-block
.visible-lg-block
.visible-lg-inline
.visible-lg-inline-block
- S'ha eliminat de v4 alfa:
.hidden-xs-up
.hidden-xs-down
.hidden-sm-up
.hidden-sm-down
.hidden-md-up
.hidden-md-down
.hidden-lg-up
.hidden-lg-down
- S'ha eliminat de la v3:
- Les utilitats d'impressió ja no comencen amb
.hidden-
o.visible-
, sinó amb.d-print-
.- Noms antics:
.visible-print-block
,.visible-print-inline
,.visible-print-inline-block
,.hidden-print
- Noves classes:
.d-print-block
,.d-print-inline
,.d-print-inline-block
,.d-print-none
- Noms antics:
En lloc d'utilitzar classes explícites .visible-*
, feu visible un element simplement no amagant-lo en aquesta mida de pantalla. Podeu combinar una .d-*-none
classe amb una .d-*-block
classe per mostrar un element només en un interval determinat de mides de pantalla (per exemple .d-none.d-md-block.d-xl-none
, mostra l'element només en dispositius mitjans i grans).
Tingueu en compte que els canvis als punts d'interrupció de la graella a la v4 significa que haureu d'augmentar un punt d'interrupció per aconseguir els mateixos resultats. Les noves classes d'utilitat responsives no intenten adaptar-se a casos menys habituals en què la visibilitat d'un element no es pot expressar com un sol rang contigu de mides de la finestra gràfica; En canvi, haureu d'utilitzar CSS personalitzat en aquests casos.