Oversikt
Komponenter og alternativer for å legge ut Bootstrap-prosjektet ditt, inkludert innpakning av beholdere, et kraftig rutenettsystem, et fleksibelt medieobjekt og responsive verktøyklasser.
Containere
Beholdere er det mest grunnleggende layoutelementet i Bootstrap og kreves når du bruker vårt standard rutenettsystem . Beholdere brukes til å inneholde, fylle og (noen ganger) sentrere innholdet i dem. Selv om containere kan nestes, krever de fleste oppsett ikke en nestet container.
Bootstrap kommer med tre forskjellige beholdere:
.container
, som setter amax-width
ved hvert responsivt bruddpunkt.container-fluid
, som erwidth: 100%
på alle bruddpunkter.container-{breakpoint}
, som erwidth: 100%
til det angitte bruddpunktet
Tabellen nedenfor illustrerer hvordan hver beholder er max-width
sammenlignet med originalen .container
og .container-fluid
på tvers av hvert bruddpunkt.
Se dem i aksjon og sammenlign dem i Grid-eksemplet vårt .
Ekstra liten <576px |
Liten ≥576 piksler |
Middels ≥768 piksler |
Stor ≥992 piksler |
Ekstra stor ≥1200px |
|
---|---|---|---|---|---|
.container |
100 % | 540 piksler | 720 piksler | 960 piksler | 1140 piksler |
.container-sm |
100 % | 540 piksler | 720 piksler | 960 piksler | 1140 piksler |
.container-md |
100 % | 100 % | 720 piksler | 960 piksler | 1140 piksler |
.container-lg |
100 % | 100 % | 100 % | 960 piksler | 1140 piksler |
.container-xl |
100 % | 100 % | 100 % | 100 % | 1140 piksler |
.container-fluid |
100 % | 100 % | 100 % | 100 % | 100 % |
Alt i et
Standardklassen vår .container
er en responsiv beholder med fast bredde, noe som betyr at den max-width
endres ved hvert bruddpunkt.
<div class="container">
<!-- Content here -->
</div>
Væske
Bruk .container-fluid
for en beholder i full bredde, som spenner over hele bredden av visningsporten.
<div class="container-fluid">
...
</div>
Mottakelig
Responsive containere er nye i Bootstrap v4.4. De lar deg spesifisere en klasse som er 100 % bred til det angitte bruddpunktet er nådd, hvoretter vi bruker max-width
s for hvert av de høyere bruddpunktene. Er for eksempel .container-sm
100 % bred for å starte til sm
bruddpunktet er nådd, hvor den skaleres opp med md
, lg
, og xl
.
<div class="container-sm">100% wide until small breakpoint</div>
<div class="container-md">100% wide until medium breakpoint</div>
<div class="container-lg">100% wide until large breakpoint</div>
<div class="container-xl">100% wide until extra large breakpoint</div>
Responsive bruddpunkter
Siden Bootstrap er utviklet for å være mobil først, bruker vi en håndfull mediespørringer for å lage fornuftige bruddpunkter for layoutene og grensesnittene våre. Disse bruddpunktene er for det meste basert på minimum viewport-bredder og lar oss skalere opp elementer etter hvert som viewporten endres.
Bootstrap bruker først og fremst følgende mediespørringsområder – eller bruddpunkter – i Sass-kildefilene våre for layout, rutenettsystem og komponenter.
// Extra small devices (portrait phones, less than 576px)
// No media query for `xs` since this is the default in Bootstrap
// Small devices (landscape phones, 576px and up)
@media (min-width: 576px) { ... }
// Medium devices (tablets, 768px and up)
@media (min-width: 768px) { ... }
// Large devices (desktops, 992px and up)
@media (min-width: 992px) { ... }
// Extra large devices (large desktops, 1200px and up)
@media (min-width: 1200px) { ... }
Siden vi skriver vår kilde-CSS i Sass, er alle våre medieforespørsler tilgjengelige via Sass mixins:
// No media query necessary for xs breakpoint as it's effectively `@media (min-width: 0) { ... }`
@include media-breakpoint-up(sm) { ... }
@include media-breakpoint-up(md) { ... }
@include media-breakpoint-up(lg) { ... }
@include media-breakpoint-up(xl) { ... }
// Example: Hide starting at `min-width: 0`, and then show at the `sm` breakpoint
.custom-class {
display: none;
}
@include media-breakpoint-up(sm) {
.custom-class {
display: block;
}
}
Vi bruker av og til mediespørringer som går i den andre retningen (den gitte skjermstørrelsen eller mindre ):
// Extra small devices (portrait phones, less than 576px)
@media (max-width: 575.98px) { ... }
// Small devices (landscape phones, less than 768px)
@media (max-width: 767.98px) { ... }
// Medium devices (tablets, less than 992px)
@media (max-width: 991.98px) { ... }
// Large devices (desktops, less than 1200px)
@media (max-width: 1199.98px) { ... }
// Extra large devices (large desktops)
// No media query since the extra-large breakpoint has no upper bound on its width
min-
og max-
prefikser og visningsporter med brøkbredder (som kan forekomme under visse forhold på enheter med høy dpi, for eksempel) ved å bruke verdier med høyere presisjon for disse sammenligningene .
Nok en gang er disse mediespørringene også tilgjengelige via Sass mixins:
@include media-breakpoint-down(xs) { ... }
@include media-breakpoint-down(sm) { ... }
@include media-breakpoint-down(md) { ... }
@include media-breakpoint-down(lg) { ... }
// No media query necessary for xl breakpoint as it has no upper bound on its width
// Example: Style from medium breakpoint and down
@include media-breakpoint-down(md) {
.custom-class {
display: block;
}
}
Det er også mediespørringer og blandinger for å målrette mot et enkelt segment av skjermstørrelser ved å bruke minimums- og maksimumsbredde for bruddpunkt.
// Extra small devices (portrait phones, less than 576px)
@media (max-width: 575.98px) { ... }
// Small devices (landscape phones, 576px and up)
@media (min-width: 576px) and (max-width: 767.98px) { ... }
// Medium devices (tablets, 768px and up)
@media (min-width: 768px) and (max-width: 991.98px) { ... }
// Large devices (desktops, 992px and up)
@media (min-width: 992px) and (max-width: 1199.98px) { ... }
// Extra large devices (large desktops, 1200px and up)
@media (min-width: 1200px) { ... }
Disse mediespørringene er også tilgjengelige via Sass mixins:
@include media-breakpoint-only(xs) { ... }
@include media-breakpoint-only(sm) { ... }
@include media-breakpoint-only(md) { ... }
@include media-breakpoint-only(lg) { ... }
@include media-breakpoint-only(xl) { ... }
På samme måte kan mediesøk spenne over flere bruddpunktbredder:
// Example
// Apply styles starting from medium devices and up to extra large devices
@media (min-width: 768px) and (max-width: 1199.98px) { ... }
Sass-miksingen for å målrette mot samme skjermstørrelsesområde vil være:
@include media-breakpoint-between(md, xl) { ... }
Z-indeks
Flere Bootstrap-komponenter bruker z-index
, CSS-egenskapen som hjelper til med å kontrollere layout ved å tilby en tredje akse for å arrangere innhold. Vi bruker en standard z-indeksskala i Bootstrap som er utformet for riktig lagnavigasjon, verktøytips og popovers, modaler og mer.
Disse høyere verdiene starter på et vilkårlig tall, høye og spesifikke nok til å ideelt sett unngå konflikter. Vi trenger et standardsett med disse på tvers av de lagdelte komponentene våre – verktøytips, popovers, navbarer, rullegardiner, modaler – slik at vi kan være rimelig konsekvente i oppførselen. Det er ingen grunn til at vi ikke kunne ha brukt 100
+ eller 500
+.
Vi oppfordrer ikke til tilpasning av disse individuelle verdiene; bør du endre en, må du sannsynligvis endre dem alle.
$zindex-dropdown: 1000 !default;
$zindex-sticky: 1020 !default;
$zindex-fixed: 1030 !default;
$zindex-modal-backdrop: 1040 !default;
$zindex-modal: 1050 !default;
$zindex-popover: 1060 !default;
$zindex-tooltip: 1070 !default;
For å håndtere overlappende grenser innenfor komponenter (f.eks. knapper og innganger i inngangsgrupper), bruker vi lave enkeltsifrede z-index
verdier på 1
, 2
, og 3
for standard, hover og aktive tilstander. På hover/fokus/aktiv bringer vi et bestemt element i forgrunnen med en høyere z-index
verdi for å vise grensen deres over søskenelementene.