Migrace na v4
Bootstrap 4 je zásadní přepis celého projektu. Nejpozoruhodnější změny jsou shrnuty níže, následované konkrétnějšími změnami příslušných komponent.
Stabilní změny
Při přechodu z Beta 3 na naše stabilní vydání v4.x nedochází k žádným převratným změnám, ale jsou zde některé pozoruhodné změny.
Tisk
-
Opraveny nefunkční tiskové nástroje. Dříve by použití
.d-print-*
třídy neočekávaně potlačilo jakoukoli jinou.d-*
třídu. Nyní odpovídají našim dalším zobrazovacím utilitám a vztahují se pouze na toto médium (@media print
). -
Rozšířené dostupné nástroje pro zobrazení tisku tak, aby odpovídaly dalším nástrojům. Beta 3 a starší měly pouze
block
,inline-block
,inline
anone
. Stable v4 přidányflex
,inline-flex
,table
,table-row
atable-cell
. -
Opraveno vykreslování náhledu tisku napříč prohlížeči s novými styly tisku, které určují
@page
size
.
Beta 3 změny
Zatímco Beta 2 zaznamenala většinu našich přelomových změn během beta fáze, stále máme několik, které je třeba vyřešit ve verzi Beta 3. Tyto změny platí, pokud aktualizujete na Betu 3 z Beta 2 nebo jakékoli starší verze Bootstrapu.
Smíšený
- Odebrána nepoužívaná
$thumbnail-transition
proměnná. Nic jsme nepřeváděli, takže to byl jen další kód. - Balíček npm již neobsahuje žádné jiné soubory než naše zdrojové a dist soubory; pokud jste na ně spoléhali a spouštěli naše skripty přes
node_modules
složku, měli byste tomu přizpůsobit svůj pracovní postup.
formuláře
-
Přepsala vlastní i výchozí zaškrtávací políčka a rádia. Nyní mají oba odpovídající strukturu HTML (vnější
<div>
se sourozencem<input>
a<label>
) a stejné styly rozvržení (výchozí skládaný, vložený s třídou modifikátoru). To nám umožňuje stylizovat štítek na základě stavu vstupu, zjednodušit podporu prodisabled
atribut (dříve vyžadoval nadřazenou třídu) a lépe podporovat naši validaci formuláře.V rámci toho jsme změnili CSS pro správu více
background-image
zaškrtávacích políček a rádií ve vlastních formulářích. Dříve měl nyní odstraněný.custom-control-indicator
prvek barvu pozadí, přechod a ikonu SVG. Přizpůsobení přechodu pozadí znamenalo nahrazení všech, pokaždé, když jste potřebovali změnit pouze jeden. Nyní máme.custom-control-label::before
pro výplň a přechod a.custom-control-label::after
zpracovává ikonu.Chcete-li vytvořit vlastní zaškrtnutí, přidejte
.custom-control-inline
. -
Aktualizovaný volič pro skupiny tlačítek založených na vstupu. Místo
[data-toggle="buttons"] { }
pro styl a chování používámedata
atribut jen pro chování JS a pro styling spoléháme na novou.btn-group-toggle
třídu. -
Odebráno
.col-form-legend
ve prospěch mírně vylepšeného.col-form-label
. Tímto způsobem.col-form-label-sm
a.col-form-label-lg
lze jej snadno použít na<legend>
prvky. -
Vstupy vlastních souborů obdržely změnu v
$custom-file-text
proměnné Sass. Už to není vnořená mapa Sass a nyní ovládá pouze jeden řetězec –Browse
tlačítko, které je nyní jediným pseudoprvkem generovaným z našeho Sass. TextChoose file
nyní pochází z.custom-file-label
.
Vstupní skupiny
-
Doplňky skupiny vstupů jsou nyní specifické svým umístěním vzhledem ke vstupu. Upustili jsme
.input-group-addon
a.input-group-btn
pro dvě nové třídy.input-group-prepend
a.input-group-append
. Nyní musíte explicitně použít dodatek nebo předponu, což zjednodušuje většinu našich CSS. V rámci přílohy nebo předpony umístěte tlačítka tak, jak by existovala kdekoli jinde, ale zalamujte text do.input-group-text
. -
Styly ověřování jsou nyní podporovány, stejně jako více vstupů (ačkoli můžete ověřit pouze jeden vstup na skupinu).
-
Třídy velikosti musí být na nadřazeném
.input-group
prvku a nikoli na jednotlivých prvcích formuláře.
Beta 2 změny
V beta verzi se snažíme o žádné zásadní změny. Ne vždy však věci jdou podle plánu. Níže jsou uvedeny zásadní změny, které je třeba mít na paměti při přechodu z Beta 1 na Beta 2.
Lámání
- Odstraněná
$badge-color
proměnná a její použití na.badge
. Používáme funkci barevného kontrastu k výběrucolor
na základěbackground-color
, takže proměnná je zbytečná. grayscale()
Funkce byla přejmenována na,gray()
aby nedošlo ke konfliktu s nativnímgrayscale
filtrem CSS.- Přejmenováno
.table-inverse
na ,.thead-inverse
, a.thead-default
na.*-dark
a.*-light
, což odpovídá našim barevným schématům používaným jinde. - Responzivní tabulky nyní generují třídy pro každý bod přerušení mřížky. Toto se liší od Beta 1 v tom, že to,
.table-responsive
co jste používali, je spíše.table-responsive-md
. Nyní můžete použít.table-responsive
nebo.table-responsive-{sm,md,lg,xl}
podle potřeby. - Zahozená podpora Bower jako správce balíčků byla pro alternativy (např. Yarn nebo npm) zastaralá. Podrobnosti viz bower/bower#2298 .
- Bootstrap stále vyžaduje jQuery 1.9.1 nebo vyšší, ale doporučuje se používat verzi 3.x, protože Bootstrap podporuje prohlížeče v3.x a navíc verze 3.x má nějaké bezpečnostní opravy.
- Odebrána nepoužívaná
.form-control-label
třída. Pokud jste tuto třídu použili, byla to duplikát.col-form-label
třídy, která byla vertikálně vystředěna a<label>
s ní spojeným vstupem v horizontálních rozvrženích formuláře. - Změněno
color-yiq
z mixinu, který obsahovalcolor
vlastnost, na funkci, která vrací hodnotu, což vám umožňuje použít ji pro jakoukoli vlastnost CSS. Například místocolor-yiq(#000)
, byste napsalicolor: color-yiq(#000);
.
Zvýraznění
- Zavedeno nové
pointer-events
použití na modalech. Vnější.modal-dialog
prochází událostmi spointer-events: none
pro vlastní manipulaci s kliknutím (umožňuje pouze naslouchat.modal-backdrop
všem kliknutím) a poté proti němu působí skutečným.modal-content
spointer-events: auto
.
souhrn
Zde jsou velké položky vstupenek, kterých byste si měli být vědomi při přechodu z v3 na v4.
Podpora prohlížeče
- Byla zrušena podpora IE8, IE9 a iOS 6. v4 je nyní pouze IE10+ a iOS 7+. Pro weby, které potřebují jeden z nich, použijte v3.
- Přidána oficiální podpora pro Android v5.0 Lollipop's Browser a WebView. Dřívější verze prohlížeče Android a WebView zůstávají pouze neoficiálně podporovány.
Globální změny
- Flexbox je ve výchozím nastavení povolen. Obecně to znamená odklon od plováků a více napříč našimi součástmi.
- Přešlo z Less na Sass pro naše zdrojové soubory CSS.
- Přepnuto z
px
narem
jako naše primární jednotka CSS, ačkoli pixely se stále používají pro dotazy na média a chování mřížky, protože výřezy zařízení nejsou ovlivněny velikostí typu. - Globální velikost písma se zvětšila z
14px
na16px
. - Přepracované vrstvy mřížky, aby se přidala pátá možnost (adresování menších zařízení na
576px
a pod) a odstranění-xs
infixu z těchto tříd. Příklad:.col-6.col-sm-4.col-md-3
. - Samostatné volitelné téma bylo nahrazeno konfigurovatelnými možnostmi prostřednictvím proměnných SCSS (např.
$enable-gradients: true
). - Systém sestavení přepracován tak, aby místo Gruntu používal řadu skriptů npm. Viz
package.json
všechny skripty nebo soubor readme našeho projektu pro potřeby místního rozvoje. - Nereagující použití Bootstrapu již není podporováno.
- Vypustil online Customizer ve prospěch rozsáhlejší dokumentace k nastavení a přizpůsobených sestavení.
- Přidány desítky nových tříd obslužných programů pro běžné páry CSS vlastnost-hodnota a zkratky pro mezery mezi okrajem a odsazením.
Mřížkový systém
- Přesunuto do flexboxu.
- Přidána podpora pro flexbox v mixinech mřížky a předdefinovaných třídách.
- Součástí flexboxu je podpora pro třídy vertikálního a horizontálního vyrovnání.
- Aktualizované názvy tříd mřížky a nová vrstva mřížky.
- Níže byla přidána nová
sm
vrstva mřížky768px
pro podrobnější kontrolu. Nyní mámexs
,sm
,md
,lg
axl
. To také znamená, že každá úroveň byla zvýšena o jednu úroveň (takže.col-md-6
ve v3 je nyní.col-lg-6
ve v4). xs
třídy mřížky byly upraveny tak, aby nevyžadovaly infix, aby přesněji reprezentovaly, že začínají používat styly namin-width: 0
a nikoli na nastavené hodnotě pixelu. Místo.col-xs-6
, je to teď.col-6
. Všechny ostatní vrstvy mřížky vyžadují infix (např.sm
).
- Níže byla přidána nová
- Aktualizované velikosti mřížky, mixiny a proměnné.
- Síťové okapy nyní mají mapu Sass, takže můžete určit konkrétní šířky okapů v každém bodě přerušení.
- Aktualizované mřížkové mixy pro použití
make-col-ready
prep mixin amake-col
pro nastaveníflex
amax-width
pro jednotlivé velikosti sloupců. - Změněny body přerušení dotazu na média a šířky kontejneru mřížkového systému, aby se zohlednila nová vrstva mřížky a zajistilo se, že sloupce jsou rovnoměrně dělitelné podle
12
jejich maximální šířky. - Zarážky mřížky a šířky kontejnerů jsou nyní zpracovávány prostřednictvím map Sass (
$grid-breakpoints
a$container-max-widths
) namísto několika samostatných proměnných. Ty zcela nahrazují@screen-*
proměnné a umožňují vám plně přizpůsobit úrovně mřížky. - Změnily se i dotazy na média. Namísto opakování našich deklarací mediálních dotazů pokaždé se stejnou hodnotou nyní máme
@include media-breakpoint-up/down/only
. Nyní místo psaní@media (min-width: @screen-sm-min) { ... }
můžete psát@include media-breakpoint-up(sm) { ... }
.
Komponenty
- Vypuštěné panely, miniatury a jamky pro novou všeobjímající komponentu, karty .
- Vypustilo písmo ikony Glyphicons. Pokud potřebujete ikony, některé možnosti jsou:
- upstream verze Glyphicons
- Octicons
- Písmo úžasné
- Seznam alternativ naleznete na stránce Rozšířit . Máte další návrhy? Otevřete prosím problém nebo PR.
- Zahodili plugin Affix jQuery.
- Místo toho doporučujeme použít
position: sticky
. Podrobnosti a konkrétní doporučení pro polyfill najdete v položce HTML5 Please . Jedním z návrhů je použít@supports
pravidlo pro jeho implementaci (např@supports (position: sticky) { ... }
. - Pokud jste použili Affix k aplikaci dalších stylů, které nejsou
position
styly, polyvýplně nemusí podporovat váš případ použití. Jednou z možností pro takové použití je knihovna ScrollPos-Styler třetí strany .
- Místo toho doporučujeme použít
- Vypustila komponentu pageru, protože to byla v podstatě mírně upravená tlačítka.
- Téměř všechny komponenty byly změněny tak, aby používaly více nevnořených selektorů tříd namísto příliš specifických selektorů potomků.
Podle složky
Tento seznam zdůrazňuje klíčové změny podle komponent mezi v3.xx a v4.0.0.
Restartujte
Novinkou pro Bootstrap 4 je Reboot , nová šablona stylů, která staví na Normalize s našimi vlastními poněkud zaujatými styly resetování. Selektory v tomto souboru používají pouze prvky – nejsou zde žádné třídy. To izoluje naše styly resetování od stylů komponent pro modulárnější přístup. Některé z nejdůležitějších resetů, které to zahrnuje, jsou box-sizing: border-box
změna, přechod z em
na rem
jednotky u mnoha prvků, styly odkazů a mnoho resetů formulářových prvků.
Typografie
- Všechny nástroje byly přesunuty
.text-
do_utilities.scss
souboru. - Zahozeno
.page-header
, protože jeho styly lze použít pomocí nástrojů. .dl-horizontal
bylo vypuštěno. Místo toho použijte.row
on<dl>
a použijte třídy sloupců mřížky (nebo mixiny) na jeho<dt>
a podřízených<dd>
.- Přepracované blokové uvozovky, přesunutí jejich stylů z
<blockquote>
prvku do jediné třídy,.blockquote
. Vypustil.blockquote-reverse
modifikátor pro textové nástroje. .list-inline
nyní vyžaduje, aby na položky seznamu jeho potomků byla.list-inline-item
použita nová třída.
snímky
- Přejmenováno
.img-responsive
na.img-fluid
. - Přejmenováno
.img-rounded
na.rounded
- Přejmenováno
.img-circle
na.rounded-circle
Tabulky
- Téměř všechny instance
>
selektoru byly odstraněny, což znamená, že vnořené tabulky budou nyní automaticky dědit styly od svých rodičů. To výrazně zjednodušuje naše selektory a potenciální přizpůsobení. - Přejmenováno
.table-condensed
na.table-sm
kvůli konzistenci. - Přidána nová
.table-inverse
možnost. - Přidány modifikátory záhlaví tabulky:
.thead-default
a.thead-inverse
. - Přejmenované kontextové třídy tak, aby měly
.table-
-prefix. Proto.active
,.success
,.warning
,.danger
a.info
do.table-active
,.table-success
,.table-warning
,.table-danger
a.table-info
.
formuláře
- Přesunutý prvek se resetuje na
_reboot.scss
soubor. - Přejmenováno
.control-label
na.col-form-label
. - Přejmenováno
.input-lg
a.input-sm
na.form-control-lg
a.form-control-sm
. - Kvůli
.form-group-*
jednoduchosti byly třídy zrušeny. Místo toho nyní použijte.form-control-*
třídy. - Byl odstraněn
.help-block
a nahrazen.form-text
textem nápovědy na úrovni bloku. Pro vložený text nápovědy a další flexibilní možnosti použijte pomocné třídy jako.text-muted
. - Spadl
.radio-inline
a.checkbox-inline
. - Konsolidované
.checkbox
a.radio
do.form-check
různých.form-check-*
tříd. - Horizontální formy přepracovány:
- Upustil od
.form-horizontal
požadavku na třídu. .form-group
již nepoužívá styly z.row
mixinu via, takže.row
je nyní vyžadován pro rozvržení vodorovné mřížky (např.<div class="form-group row">
).- Přidána nová
.col-form-label
třída k vertikálně středovým štítkům s.form-control
s. - Přidána novinka
.form-row
pro rozvržení kompaktních formulářů s třídami mřížky (vyměňte své.row
za a.form-row
a jděte).
- Upustil od
- Přidána podpora vlastních formulářů (pro zaškrtávací políčka, rádia, výběry a vkládání souborů).
.has-error
Třídy ,.has-warning
, a byly nahrazeny.has-success
validací formuláře HTML5 prostřednictvím CSS:invalid
a:valid
pseudotříd.- Přejmenováno
.form-control-static
na.form-control-plaintext
.
Tlačítka
- Přejmenováno
.btn-default
na.btn-secondary
. .btn-xs
Třída úplně vypadla, protože je.btn-sm
proporcionálně mnohem menší než v3.- Funkce stavového tlačítka pluginu
button.js
jQuery byla vypuštěna. To zahrnuje metody$().button(string)
a$().button('reset')
. Doporučujeme místo toho použít malý kousek vlastního JavaScriptu, který bude mít tu výhodu, že se bude chovat přesně tak, jak chcete.- Všimněte si, že ostatní funkce pluginu (zaškrtávací políčka tlačítek, přepínače tlačítek, tlačítka s jedním přepínáním) byly ve verzi 4 zachovány.
- Změňte tlačítka'
[disabled]
na:disabled
, protože IE9+ podporuje:disabled
. Je to všakfieldset[disabled]
stále nutné, protože nativní zakázané sady polí jsou v IE11 stále chybné .
Skupina tlačítek
- Přepsaná komponenta s flexboxem.
- Odebráno
.btn-group-justified
. Jako náhradu můžete použít<div class="btn-group d-flex" role="group"></div>
jako obal kolem prvků s.w-100
. - Třídu zcela zahodil,
.btn-group-xs
protože byl odebrán.btn-xs
. - Odstraněny explicitní mezery mezi skupinami tlačítek v panelech nástrojů tlačítek; nyní použijte nástroje pro marži.
- Vylepšená dokumentace pro použití s dalšími komponentami.
Rozbalovací seznamy
- Přepnuto z rodičovských selektorů na singulární třídy pro všechny komponenty, modifikátory atd.
- Zjednodušené styly rozevírací nabídky, které se již nebudou dodávat se šipkami směřujícími nahoru nebo dolů připojenými k rozbalovací nabídce.
- Rozbalovací seznamy lze nyní vytvořit pomocí
<div>
s nebo<ul>
s. - Přestavěné rozevírací styly a značky poskytující snadnou, vestavěnou podporu pro
<a>
a<button>
založené rozevírací položky. - Přejmenováno
.divider
na.dropdown-divider
. - Položky rozbalovací nabídky nyní vyžadují
.dropdown-item
. - Rozbalovací přepínače již nevyžadují explicitní
<span class="caret"></span>
; toto je nyní poskytováno automaticky prostřednictvím CSS::after
na.dropdown-toggle
.
Mřížkový systém
- Přidán nový
576px
bod přerušení mřížky jakosm
, což znamená, že nyní existuje celkem pět úrovní (xs
,sm
,md
,lg
axl
). - Přejmenovány responzivní třídy modifikátoru mřížky z
.col-{breakpoint}-{modifier}-{size}
na.{modifier}-{breakpoint}-{size}
pro jednodušší třídy mřížky. - Vypuštěné třídy modifikátorů push a pull pro nové třídy poháněné flexboxem
order
. Například místo.col-8.push-4
a.col-4.pull-8
použijete.col-8.order-2
a.col-4.order-1
. - Přidány třídy utility flexbox pro gridový systém a komponenty.
Seznam skupin
- Přepsaná komponenta s flexboxem.
- Nahrazeno
a.list-group-item
explicitní třídou ,.list-group-item-action
pro stylování verzí odkazů a tlačítek položek skupiny seznamu. - Přidána
.list-group-flush
třída pro použití s kartami.
Modální
- Přepsaná komponenta s flexboxem.
- Vzhledem k přechodu na flexbox je zarovnání ikon pro zrušení v záhlaví pravděpodobně přerušeno, protože již nepoužíváme plovoucí. Plovoucí obsah je na prvním místě, ale s flexboxem to již neplatí. Aktualizujte své ikony zavírání tak, aby následovaly po modálních názvech a opravte je.
- Možnost
remote
(kterou bylo možné použít k automatickému načtení a vložení externího obsahu do modalu) a odpovídajícíloaded.bs.modal
událost byly odstraněny. Místo toho doporučujeme použít šablonu na straně klienta nebo rámec pro vázání dat nebo sami zavolat jQuery.load .
Nav
- Přepsaná komponenta s flexboxem.
- Vypustil téměř všechny
>
selektory pro jednodušší stylování prostřednictvím nevnořených tříd. - Místo selektorů specifických pro HTML, jako
.nav > li > a
je , používáme samostatné třídy pro.nav
s,.nav-item
s a.nav-link
s. Díky tomu je váš HTML flexibilnější a zároveň přináší zvýšenou rozšiřitelnost.
Navbar
Navbar byl zcela přepsán do flexboxu s vylepšenou podporou pro zarovnání, odezvu a přizpůsobení.
- Responzivní chování navigačního panelu se nyní aplikuje na
.navbar
třídu prostřednictvím požadovaného,.navbar-expand-{breakpoint}
kde si můžete vybrat, kde se má navigační panel sbalit. Dříve to byla méně variabilní modifikace a vyžadovala rekompilaci. .navbar-default
je nyní.navbar-light
, i když.navbar-dark
zůstává stejný. Jeden z nich je vyžadován na každém navigačním panelu. Nicméně, tyto třídy už ne souborbackground-color
s; místo toho v podstatě ovlivňují pouzecolor
.- Navbary nyní vyžadují nějakou deklaraci pozadí. Vyberte si z našich obslužných programů na pozadí (
.bg-*
) nebo si nastavte své vlastní pomocí výše uvedených světelných/inverzních tříd pro šílené přizpůsobení . - Vzhledem ke stylům flexboxu mohou nyní navigační panely používat nástroje flexbox pro snadné možnosti zarovnání.
.navbar-toggle
je nyní.navbar-toggler
a má různé styly a vnitřní značení (už ne tři<span>
s).- Třídu
.navbar-form
úplně opustil. Už to není nutné; místo toho pouze použijte.form-inline
a použijte nástroje pro okraj podle potřeby. - Navigační panely již neobsahují
margin-bottom
neboborder-radius
ve výchozím nastavení. Podle potřeby používejte nástroje. - Všechny příklady s navigačními panely byly aktualizovány tak, aby obsahovaly nové značky.
Stránkování
- Přepsaná komponenta s flexboxem.
- Explicitní třídy (
.page-item
,.page-link
) jsou nyní vyžadovány na potomcích.pagination
s - Součást úplně vypustila,
.pager
protože to bylo jen o málo víc než přizpůsobená tlačítka obrysu.
Strouhanka
- Explicitní třída ,
.breadcrumb-item
je nyní vyžadována na potomcích.breadcrumb
s
Štítky a odznaky
- Konsoliduje
.label
a.badge
odděluje od<label>
prvku a zjednodušuje související komponenty. - Přidán
.badge-pill
jako modifikátor pro zaoblený vzhled „pilulky“. - Odznaky se již ve skupinách seznamů a dalších komponentách automaticky neuvolňují. K tomu jsou nyní vyžadovány užitné třídy.
.badge-default
byl vypuštěn a.badge-secondary
přidán, aby odpovídal třídám modifikátorů komponent používaných jinde.
Panely, miniatury a jamky
Úplně vypuštěno pro novou komponentu karty.
Panely
.panel
do.card
, nyní postavený s flexboxem..panel-default
odstraněna a žádná výměna..panel-group
odstraněna a žádná výměna..card-group
není náhrada, je jiná..panel-heading
na.card-header
.panel-title
do.card-title
. V závislosti na požadovaném vzhledu můžete také chtít použít prvky nadpisu nebo třídy (např<h3>
. ,.h3
) nebo tučné prvky nebo třídy (např<strong>
. ,<b>
,.font-weight-bold
). Všimněte si, že.card-title
, i když je pojmenován podobně, vytváří jiný vzhled než.panel-title
..panel-body
na.card-body
.panel-footer
na.card-footer
.panel-primary
,.panel-success
,.panel-info
,.panel-warning
, a.panel-danger
byly vynechány pro.bg-
,.text-
, a.border
nástroje vygenerované z naší$theme-colors
mapy Sass.
Pokrok
- Kontextové
.progress-bar-*
třídy byly nahrazeny.bg-*
nástroji. Například seclass="progress-bar progress-bar-danger"
stáváclass="progress-bar bg-danger"
. .active
Animované ukazatele průběhu byly nahrazeny.progress-bar-animated
.
Kolotoč
- Přepracována celá součást, aby se zjednodušil design a styl. Máme pro vás méně stylů k přepsání, nové indikátory a nové ikony.
- Všechny CSS byly zrušeny vnořením a přejmenovány, což zajišťuje, že každá třída má předponu
.carousel-
.- Pro položky karuselu jsou
.next
,.prev
,.left
, a.right
nyní.carousel-item-next
,.carousel-item-prev
,.carousel-item-left
a.carousel-item-right
. .item
je také nyní.carousel-item
.- Pro ovládací prvky předchozí/další
.carousel-control.right
a.carousel-control.left
jsou nyní.carousel-control-next
a.carousel-control-prev
, což znamená, že již nevyžadují konkrétní základní třídu.
- Pro položky karuselu jsou
- Odstraněny všechny responzivní styly, odložení na nástroje (např. zobrazování titulků v určitých výřezech) a vlastní styly podle potřeby.
- Byly odstraněny přepisy obrázků pro obrázky v položkách karuselu a byly převedeny na nástroje.
- Vylepšili jsme příklad Carousel tak, aby zahrnoval nové značky a styly.
Tabulky
- Odebrána podpora pro stylizované vnořené tabulky. Všechny styly tabulek jsou nyní zděděny ve verzi 4 pro jednodušší selektory.
- Přidána varianta inverzní tabulky.
Utility
- Zobrazit, skryté a další:
- Upravili zobrazovací nástroje tak, aby byly responzivní (např.
.d-none
ad-{sm,md,lg,xl}-none
). - Upustil od většiny
.hidden-*
nástrojů pro nové nástroje pro zobrazování . Například místo.hidden-sm-up
, použijte.d-sm-none
. Přejmenoval.hidden-print
obslužné programy tak, aby používaly schéma pojmenování obslužného programu zobrazení. Další informace naleznete v části Responzivní nástroje na této stránce. - Přidány
.float-{sm,md,lg,xl}-{left,right,none}
třídy pro responzivní floating a odstraněny ,.pull-left
a.pull-right
protože jsou nadbytečné pro.float-left
a.float-right
.
- Upravili zobrazovací nástroje tak, aby byly responzivní (např.
- Typ:
- Do našich tříd zarovnání textu byly přidány responzivní varianty
.text-{sm,md,lg,xl}-{left,center,right}
.
- Do našich tříd zarovnání textu byly přidány responzivní varianty
- Zarovnání a rozestupy:
- Přidány nové responzivní nástroje pro okraje a výplň pro všechny strany a navíc vertikální a horizontální zkratky.
- Přidána lodní zátěž flexbox utilit .
- Odešel
.center-block
do nové.mx-auto
třídy.
- Clearfix aktualizován, aby přestal podporovat starší verze prohlížečů.
Mixiny předpony dodavatele
Mixiny předpon dodavatele Bootstrapu 3 , které byly ve verzi 3.2.0 zastaralé, byly z Bootstrapu 4 odstraněny. Protože používáme Autoprefixer , již nejsou nutné.
Odebrány následující mixiny : 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
Dokumentace
Naše dokumentace byla také celkově upgradována. Zde je spodní část:
- Stále používáme Jekyll, ale máme v mixu pluginy:
bugify.rb
se používá k efektivnímu výpisu záznamů na naší stránce s chybami v prohlížeči .example.rb
je vlastní větev výchozíhohighlight.rb
pluginu, která umožňuje snadnější manipulaci s ukázkovým kódem.callout.rb
je podobná vlastní vidlice, ale určená pro naše speciální popisky dokumentů.- jekyll-toc se používá ke generování našeho obsahu.
- Veškerý obsah dokumentů byl pro snadnější úpravy přepsán v Markdown (místo HTML).
- Stránky byly reorganizovány pro jednodušší obsah a přístupnější hierarchii.
- Přešli jsme z běžného CSS na SCSS, abychom plně využili Bootstrapových proměnných, mixinů a dalších.
Responzivní nástroje
Všechny @screen-
proměnné byly ve verzi 4.0.0 odstraněny. Místo toho použijte mixiny media-breakpoint-up()
, media-breakpoint-down()
, nebo Sass nebo mapu Sass.media-breakpoint-only()
$grid-breakpoints
Naše responzivní třídy utilit byly z velké části odstraněny ve prospěch explicitních display
utilit.
- Třídy
.hidden
a.show
byly odstraněny, protože byly v konfliktu s metodami$(...).hide()
a jQuery.$(...).show()
Místo toho zkuste[hidden]
atribut přepnout nebo použijte vložené styly jakostyle="display: none;"
astyle="display: block;"
. - Všechny
.hidden-
třídy byly odstraněny, kromě tiskových nástrojů, které byly přejmenovány.- Odebráno z 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
- Odebráno z verze 4 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
- Odebráno z v3:
- Tiskové nástroje již nezačínají s
.hidden-
nebo.visible-
, ale s.d-print-
.- Stará jména:
.visible-print-block
,.visible-print-inline
,.visible-print-inline-block
,.hidden-print
- Nové třídy:
.d-print-block
,.d-print-inline
,.d-print-inline-block
,.d-print-none
- Stará jména:
Namísto použití explicitních .visible-*
tříd zviditelníte prvek tak, že jej při dané velikosti obrazovky jednoduše neskryjete. Můžete kombinovat jednu .d-*-none
třídu s jednou .d-*-block
třídou pro zobrazení prvku pouze na daném intervalu velikostí obrazovky (např .d-none.d-md-block.d-xl-none
. zobrazuje prvek pouze na středních a velkých zařízeních).
Všimněte si, že změny zarážek mřížky ve verzi 4 znamenají, že k dosažení stejných výsledků budete muset jít o jeden zarážkový bod větší. Nové responzivní třídy obslužných programů se nepokoušejí vyhovět méně obvyklým případům, kdy viditelnost prvku nelze vyjádřit jako jeden souvislý rozsah velikostí výřezu; v takových případech budete místo toho muset použít vlastní CSS.