Starter
En oversikt over Bootstrap, hvordan du laster ned og bruker, grunnleggende maler og eksempler og mer.
En oversikt over Bootstrap, hvordan du laster ned og bruker, grunnleggende maler og eksempler og mer.
Bootstrap (for øyeblikket v3.4.1) har noen enkle måter å raskt komme i gang på, og hver enkelt appellerer til forskjellige ferdighetsnivåer og bruksområder. Les gjennom for å se hva som passer dine spesielle behov.
Kompilert og minifisert CSS, JavaScript og fonter. Ingen dokumenter eller originale kildefiler er inkludert.
Kilde mindre, JavaScript og skriftfiler, sammen med våre dokumenter. Krever en Less-kompilator og noe oppsett.
Bootstrap portert fra Less til Sass for enkel inkludering i Rails, Compass eller Sass-bare prosjekter.
Folkene på jsDelivr tilbyr CDN-støtte for Bootstraps CSS og JavaScript. Bare bruk disse jsDelivr- lenkene.
Du kan også installere og administrere Bootstraps Less, CSS, JavaScript og fonter ved å bruke Bower :
Du kan også installere Bootstrap ved å bruke npm :
require('bootstrap')
vil laste inn alle Bootstraps jQuery-plugins på jQuery-objektet. Selve bootstrap
modulen eksporterer ikke noe. Du kan manuelt laste Bootstraps jQuery-plugins individuelt ved å laste /js/*.js
filene under pakkens toppnivåkatalog.
Bootstraps package.json
inneholder noen ekstra metadata under følgende nøkler:
less
- bane til Bootstraps viktigste Less -kildefilstyle
- bane til Bootstraps ikke-minifiserte CSS som er forhåndskompilert med standardinnstillingene (ingen tilpasning)Du kan også installere og administrere Bootstraps Less, CSS, JavaScript og fonter ved å bruke Composer :
Bootstrap bruker Autoprefixer for å håndtere CSS-leverandørprefikser . Hvis du kompilerer Bootstrap fra Less/Sass-kilden og ikke bruker Gruntfilen vår, må du selv integrere Autoprefixer i byggeprosessen. Hvis du bruker forhåndskompilert Bootstrap eller bruker Gruntfilen vår, trenger du ikke å bekymre deg for dette fordi Autoprefixer allerede er integrert i Gruntfilen vår.
Bootstrap kan lastes ned i to former, der du finner følgende kataloger og filer, logisk grupperer vanlige ressurser og gir både kompilerte og minifiserte variasjoner.
Vær oppmerksom på at alle JavaScript-plugins krever at jQuery er inkludert, som vist i startmalen . Se vårbower.json
for å se hvilke versjoner av jQuery som støttes.
Når den er lastet ned, pakk ut den komprimerte mappen for å se strukturen til (den kompilerte) Bootstrap. Du vil se noe slikt:
Dette er den mest grunnleggende formen for Bootstrap: forhåndskompilerte filer for rask drop-in-bruk i nesten alle nettprosjekter. Vi tilbyr kompilert CSS og JS ( bootstrap.*
), samt kompilert og minifisert CSS og JS ( bootstrap.min.*
). CSS - kildekart ( bootstrap.*.map
) er tilgjengelige for bruk med visse nettleseres utviklerverktøy. Fonter fra Glyphicons er inkludert, det samme er det valgfrie Bootstrap-temaet.
Nedlastingen av Bootstrap-kildekoden inkluderer de forhåndskompilerte CSS-, JavaScript- og fontelementene, sammen med kilde Less, JavaScript og dokumentasjon. Mer spesifikt inkluderer den følgende og mer:
, less/
, js/
og fonts/
er kildekoden for CSS-, JS- og ikonfontene våre (henholdsvis). Mappen dist/
inneholder alt som er oppført i den forhåndskompilerte nedlastingsdelen ovenfor. Mappen docs/
inneholder kildekoden for dokumentasjonen vår og examples/
Bootstrap-bruk. Utover det gir enhver annen inkludert fil støtte for pakker, lisensinformasjon og utvikling.
Bootstrap bruker Grunt for byggesystemet sitt, med praktiske metoder for å jobbe med rammeverket. Det er hvordan vi kompilerer koden vår, kjører tester og mer.
For å installere Grunt må du først laste ned og installere node.js (som inkluderer npm). npm står for node-pakkede moduler og er en måte å administrere utviklingsavhengigheter gjennom node.js.
Så fra kommandolinjen:grunt-cli
globalt med npm install -g grunt-cli
./bootstrap/
, og kjør deretter npm install
. npm vil se på package.json
filen og automatisk installere de nødvendige lokale avhengighetene som er oppført der.Når du er ferdig, vil du kunne kjøre de forskjellige Grunt-kommandoene fra kommandolinjen.
grunt dist
(Bare kompiler CSS og JavaScript)Regenererer /dist/
katalogen med kompilerte og minifiserte CSS- og JavaScript-filer. Som Bootstrap-bruker er dette normalt kommandoen du vil ha.
grunt watch
(Se)Ser på Less-kildefilene og kompilerer dem automatisk til CSS hver gang du lagrer en endring.
grunt test
(Kjør tester)Kjører JSHint og kjører QUnit- testene i ekte nettlesere takket være Karma .
grunt docs
(Bygg og test dokumentmidlene)Bygger og tester CSS, JavaScript og andre ressurser som brukes når du kjører dokumentasjonen lokalt via bundle exec jekyll serve
.
grunt
(Bygg absolutt alt og kjør tester)Kompilerer og forminsker CSS og JavaScript, bygger dokumentasjonsnettstedet, kjører HTML5-validatoren mot dokumentene, regenererer Customizer-ressursene og mer. Krever Jekyll . Vanligvis bare nødvendig hvis du hacker på selve Bootstrap.
Skulle du støte på problemer med å installere avhengigheter eller kjøre Grunt-kommandoer, må du først slette /node_modules/
katalogen generert av npm. Kjør deretter på nytt npm install
.
Start med denne grunnleggende HTML-malen, eller endre disse eksemplene . Vi håper du vil tilpasse malene og eksemplene våre, tilpasse dem til dine behov.
Kopier HTML-en nedenfor for å begynne å jobbe med et minimalt Bootstrap-dokument.
Bygg videre på grunnmalen ovenfor med Bootstraps mange komponenter. Vi oppfordrer deg til å tilpasse og tilpasse Bootstrap for å passe ditt individuelle prosjekts behov.
Få kildekoden for hvert eksempel nedenfor ved å laste ned Bootstrap-depotet . Eksempler finner du i docs/examples/
katalogen.
Lag en tilpasset navigasjonslinje med begrunnede lenker. Vær oppmerksom! Ikke for Safari-vennlig.
Bootlint er det offisielle Bootstrap HTML linter- verktøyet. Den sjekker automatisk for flere vanlige HTML-feil på nettsider som bruker Bootstrap på en ganske "vanilje" måte. Vanilla Bootstraps komponenter/widgets krever at deres deler av DOM-en samsvarer med visse strukturer. Bootlint sjekker at forekomster av Bootstrap-komponenter har korrekt strukturert HTML. Vurder å legge til Bootlint i Bootstrap-nettutviklingsverktøykjeden, slik at ingen av de vanlige feilene bremser prosjektets utvikling.
Hold deg oppdatert på utviklingen av Bootstrap og nå ut til fellesskapet med disse nyttige ressursene.
irc.freenode.net
serveren, i ##bootstrap-kanalen .twitter-bootstrap-3
.bootstrap
på pakker som endrer eller legger til funksjonaliteten til Bootstrap når de distribuerer gjennom npm eller lignende leveringsmekanismer for maksimal oppdagbarhet.Du kan også følge @getbootstrap på Twitter for siste sladder og fantastiske musikkvideoer.
Bootstrap tilpasser automatisk sidene dine for ulike skjermstørrelser. Slik deaktiverer du denne funksjonen slik at siden din fungerer som dette ikke-responsive eksempelet .
<meta>
nevnt i CSS-dokumentenewidth
på .container
for hver grid tier med en enkelt bredde, for eksempel width: 970px !important;
Pass på at dette kommer etter standard Bootstrap CSS. Du kan eventuelt unngå !important
med mediespørringer eller noe selector-fu..col-xs-*
klasser i tillegg til eller i stedet for de mellomstore/store. Ikke bekymre deg, det ekstra lille enhetens rutenett skaleres til alle oppløsninger.Du trenger fortsatt Respond.js for IE8 (siden medieforespørslene våre fortsatt er der og må behandles). Dette deaktiverer "mobilnettstedet"-aspekter av Bootstrap.
Vi har brukt disse trinnene til et eksempel. Les kildekoden for å se de spesifikke endringene som er implementert.
Ønsker du å migrere fra en eldre versjon av Bootstrap til v3.x? Sjekk ut vår migrasjonsveiledning .
Bootstrap er bygget for å fungere best i de nyeste stasjonære og mobile nettleserne, noe som betyr at eldre nettlesere kan vise forskjellig stil, men fullt funksjonell, gjengivelser av visse komponenter.
Spesielt støtter vi de nyeste versjonene av følgende nettlesere og plattformer.
Alternative nettlesere som bruker den nyeste versjonen av WebKit, Blink eller Gecko, enten direkte eller via plattformens webvisnings-API, støttes ikke eksplisitt. Imidlertid bør Bootstrap (i de fleste tilfeller) vises og fungere korrekt i disse nettleserne også. Mer spesifikk støtteinformasjon er gitt nedenfor.
Generelt sett støtter Bootstrap de nyeste versjonene av hver store plattforms standard nettlesere. Merk at proxy-nettlesere (som Opera Mini, Opera Mobiles Turbo-modus, UC Browser Mini, Amazon Silk) ikke støttes.
Chrome | Firefox | Safari | |
---|---|---|---|
Android | Støttes | Støttes | N/A |
iOS | Støttes | Støttes | Støttes |
På samme måte støttes de nyeste versjonene av de fleste stasjonære nettlesere.
Chrome | Firefox | Internet Explorer | Opera | Safari | |
---|---|---|---|---|---|
Mac | Støttes | Støttes | N/A | Støttes | Støttes |
Windows | Støttes | Støttes | Støttes | Støttes | Ikke støttet |
På Windows støtter vi Internet Explorer 8-11 .
For Firefox, i tillegg til den siste normale stabile utgivelsen, støtter vi også den nyeste versjonen av Firefox (Extended Support Release) (ESR) .
Uoffisielt burde Bootstrap se ut og oppføre seg godt nok i Chromium og Chrome for Linux, Firefox for Linux og Internet Explorer 7, samt Microsoft Edge, selv om de ikke er offisielt støttet.
For en liste over noen av nettleserfeilene som Bootstrap må kjempe med, se vår vegg med nettleserfeil .
Internet Explorer 8 og 9 støttes også, men vær oppmerksom på at enkelte CSS3-egenskaper og HTML5-elementer ikke støttes fullt ut av disse nettleserne. I tillegg krever Internet Explorer 8 bruk av Respond.js for å aktivere støtte for mediesøk.
Trekk | Internet Explorer 8 | Internet Explorer 9 |
---|---|---|
border-radius |
Ikke støttet | Støttes |
box-shadow |
Ikke støttet | Støttes |
transform |
Ikke støttet | Støttes, med -ms prefiks |
transition |
Ikke støttet | |
placeholder |
Ikke støttet |
Besøk Kan jeg bruke... for detaljer om nettleserstøtte for CSS3- og HTML5-funksjoner.
Vær oppmerksom på følgende forbehold når du bruker Respond.js i utviklings- og produksjonsmiljøene dine for Internet Explorer 8.
Bruk av Respond.js med CSS hostet på et annet (under)domene (for eksempel på et CDN) krever noe ekstra oppsett. Se Respond.js-dokumentene for detaljer.
file://
På grunn av nettlesersikkerhetsregler fungerer ikke Respond.js med sider som vises via file://
protokollen (som når du åpner en lokal HTML-fil). For å teste responsive funksjoner i IE8, se sidene dine over HTTP(S). Se Respond.js-dokumentene for detaljer.
@import
Respond.js fungerer ikke med CSS som er referert via @import
. Spesielt noen Drupal-konfigurasjoner er kjent for å bruke @import
. Se Respond.js-dokumentene for detaljer.
IE8 støtter ikke fullt ut box-sizing: border-box;
når det kombineres med min-width
, max-width
, min-height
, eller max-height
. Av den grunn, fra og med v3.0.1, bruker vi ikke lenger max-width
på .container
s.
IE8 har noen problemer med @font-face
når den kombineres med :before
. Bootstrap bruker den kombinasjonen med sine Glyphicons. Hvis en side er bufret, og lastet uten musen over vinduet (dvs. trykk på oppdateringsknappen eller last inn noe i en iframe), så blir siden gjengitt før fonten lastes. Holder du musepekeren over siden (brødteksten) vises noen av ikonene, og ved å holde musepekeren over de resterende ikonene vises disse også. Se utgave #13863 for detaljer.
Bootstrap støttes ikke i de gamle Internet Explorer-kompatibilitetsmodusene. For å være sikker på at du bruker den nyeste gjengivelsesmodusen for IE, bør du vurdere å inkludere riktig <meta>
tag på sidene dine:
Bekreft dokumentmodusen ved å åpne feilsøkingsverktøyene: trykk F12og sjekk "Dokumentmodus".
Denne taggen er inkludert i all Bootstraps dokumentasjon og eksempler for å sikre best mulig gjengivelse i hver støttet versjon av Internet Explorer.
Se dette StackOverflow-spørsmålet for mer informasjon.
Internet Explorer 10 skiller ikke enhetsbredde fra visningsportbredde , og bruker derfor ikke mediespørringene på riktig måte i Bootstraps CSS. Vanligvis vil du bare legge til et raskt utdrag av CSS for å fikse dette:
Dette fungerer imidlertid ikke for enheter som kjører Windows Phone 8-versjoner som er eldre enn Update 3 (aka GDR3) , da det fører til at slike enheter stort sett viser en skrivebordsvisning i stedet for en smal "telefon"-visning. For å løse dette, må du inkludere følgende CSS og JavaScript for å omgå feilen .
For mer informasjon og retningslinjer for bruk, les Windows Phone 8 og Device-Width .
Som en heads up inkluderer vi dette i all Bootstraps dokumentasjon og eksempler som en demonstrasjon.
Gjengivelsesmotoren for versjoner av Safari før v7.1 for OS X og Safari for iOS v8.0 hadde noen problemer med antall desimaler som ble brukt i .col-*-1
rutenettklassene våre. Så hvis du hadde 12 individuelle rutenettkolonner, ville du lagt merke til at de ble korte sammenlignet med andre rader med kolonner. I tillegg til å oppgradere Safari/iOS, har du noen alternativer for løsninger:
.pull-right
til den siste rutenettkolonnen for å få hard-høyre justeringStøtte for overflow: hidden
på <body>
elementet er ganske begrenset i iOS og Android. For det formål, når du ruller forbi toppen eller bunnen av en modal i en av enhetenes nettlesere, vil <body>
innholdet begynne å rulle. Se Chrome-feil #175502 (fikset i Chrome v40) og WebKit-feil #153852 .
Fra og med iOS 9.3, mens en modal er åpen, hvis den første berøringen av en rullebevegelse er innenfor grensen til en tekst <input>
eller en <textarea>
, vil <body>
innholdet under modalen bli rullet i stedet for selve modalen. Se WebKit-feil #153856 .
Vær også oppmerksom på at hvis du bruker en fast navbar eller bruker innganger innenfor en modal, har iOS en gjengivelsesfeil som ikke oppdaterer posisjonen til faste elementer når det virtuelle tastaturet utløses. Noen få løsninger for dette inkluderer å transformere elementene dine til position: absolute
eller påkalle en timer på fokus for å prøve å korrigere posisjoneringen manuelt. Dette håndteres ikke av Bootstrap, så det er opp til deg å bestemme hvilken løsning som passer best for din applikasjon.
.dropdown-backdrop
Elementet brukes ikke på iOS i nav på grunn av kompleksiteten til z-indeksering . Derfor, for å lukke rullegardinmenyene i navbarer, må du klikke direkte på rullegardinelementet (eller et hvilket som helst annet element som vil utløse en klikkhendelse i iOS ).
Sidezooming presenterer uunngåelig gjengivelsesartefakter i enkelte komponenter, både i Bootstrap og resten av nettet. Avhengig av problemet kan vi kanskje fikse det (søk først og åpne et problem om nødvendig). Imidlertid har vi en tendens til å ignorere disse siden de ofte ikke har noen direkte løsning annet enn hacky løsninger.
:hover
/ :focus
på mobilSelv om ekte sveving ikke er mulig på de fleste berøringsskjermer, emulerer de fleste mobilnettlesere svevestøtte og gjør :hover
"klistre". Med andre ord, :hover
stiler begynner å gjelde etter å ha trykket på et element og slutter først å gjelde etter at brukeren trykker på et annet element. Dette kan føre til at Bootstraps :hover
tilstander blir uønsket "fast" på slike nettlesere. Noen mobilnettlesere gjør også :focus
lignende klebrig. Det er foreløpig ingen enkel løsning for disse problemene annet enn å fjerne slike stiler helt.
Selv i noen moderne nettlesere kan utskrift være rart.
Spesielt fra og med Chrome v32 og uavhengig av marginnstillinger, bruker Chrome en visningsportbredde som er betydelig smalere enn den fysiske papirstørrelsen når den løser mediespørsmål mens du skriver ut en nettside. Dette kan føre til at Bootstraps ekstra lille rutenett uventet aktiveres under utskrift. Se utgave #12078 og Chrome-feil #273306 for detaljer. Foreslåtte løsninger:
@screen-*
Less-variablene slik at skriverpapiret ditt anses som større enn ekstra lite.Fra og med Safari v8.0 kan .container
s med fast bredde føre til at Safari bruker en uvanlig liten skriftstørrelse ved utskrift. Se #14868 og WebKit-feil #138192 for flere detaljer. En mulig løsning for dette er å legge til følgende CSS:
Ut av esken leveres Android 4.1 (og til og med noen nyere utgivelser tilsynelatende) med nettleserappen som standard nettleser (i motsetning til Chrome). Dessverre har nettleserappen mange feil og inkonsekvenser med CSS generelt.
På <select>
elementer vil ikke Android-aksjenettleseren vise sidekontrollene hvis det er en border-radius
og/eller border
brukt. (Se dette StackOverflow-spørsmålet for detaljer.) Bruk kodebiten nedenfor for å fjerne den fornærmende CSS-en og gjengi den <select>
som et ustilt element i Android-aksjenettleseren. Brukeragenten som snuser unngår forstyrrelser med Chrome-, Safari- og Mozilla-nettlesere.
Vil du se et eksempel? Sjekk ut denne JS Bin-demoen.
For å gi den best mulige opplevelsen til gamle og buggy nettlesere, bruker Bootstrap CSS-nettleserhack flere steder for å målrette spesiell CSS til visse nettleserversjoner for å omgå feil i nettleserne selv. Disse hackene får forståelig nok CSS-validatorer til å klage over at de er ugyldige. Et par steder bruker vi også avanserte CSS-funksjoner som ennå ikke er fullstendig standardiserte, men disse brukes utelukkende for progressiv forbedring.
Disse valideringsadvarslene spiller ingen rolle i praksis siden den ikke-hacky-delen av CSS-en vår validerer fullt ut og de hacky-delene ikke forstyrrer den riktige funksjonen til den ikke-hacky-delen, og derfor ignorerer vi disse advarslene bevisst.
HTML-dokumentene våre har også noen trivielle og ubetydelige HTML-valideringsadvarsler på grunn av vår inkludering av en løsning for en viss Firefox-feil .
Selv om vi ikke offisielt støtter noen tredjeparts plugins eller tillegg, tilbyr vi noen nyttige råd for å unngå potensielle problemer i prosjektene dine.
Noe tredjepartsprogramvare, inkludert Google Maps og Google Custom Search Engine, er i konflikt med Bootstrap på grunn av * { box-sizing: border-box; }
, en regel som gjør at det padding
ikke påvirker den endelige beregnede bredden til et element. Lær mer om boksmodell og størrelse på CSS Tricks .
Avhengig av konteksten kan du overstyre etter behov (alternativ 1) eller tilbakestille boksstørrelsen for hele regioner (alternativ 2).
Bootstrap følger vanlige nettstandarder og kan – med minimal ekstra innsats – brukes til å lage nettsteder som er tilgjengelige for de som bruker AT .
Hvis navigasjonen din inneholder mange lenker og kommer før hovedinnholdet i DOM, legg til en Skip to main content
lenke før navigasjonen (for en enkel forklaring, se denne A11Y Project-artikkelen om hopp over navigasjonslenker ). Bruk av .sr-only
klassen vil visuelt skjule hopp over koblingen, og .sr-only-focusable
klassen vil sørge for at koblingen blir synlig når den er fokusert (for seende tastaturbrukere).
På grunn av langvarige mangler/feil i Chrome (se utgave 262171 i Chromium bug tracker ) og Internet Explorer (se denne artikkelen om lenker på siden og fokusrekkefølge ), må du sørge for at målet for hoppkoblingen din er i det minste programmatisk fokuserbar ved å legge til tabindex="-1"
.
I tillegg vil du kanskje eksplisitt undertrykke en synlig fokusindikasjon på målet (spesielt siden Chrome for øyeblikket også setter fokus på elementer med tabindex="-1"
når de klikkes med musen) med #content:focus { outline: none; }
.
Vær oppmerksom på at denne feilen også vil påvirke alle andre lenker på siden din kan bruke, og gjøre dem ubrukelige for tastaturbrukere. Du kan vurdere å legge til en lignende stop-gap-fiks til alle andre navngitte ankere/fragmentidentifikatorer som fungerer som lenkemål.
Når du legger overskrifter ( <h1>
- <h6>
), bør den primære dokumentoverskriften være en <h1>
. Etterfølgende overskrifter bør gjøre logisk bruk av <h2>
- <h6>
slik at skjermlesere kan konstruere en innholdsfortegnelse for sidene dine.
Lær mer på HTML CodeSniffer og Penn State's AccessAbility .
For øyeblikket er noen av standard fargekombinasjoner tilgjengelig i Bootstrap (som de forskjellige stylede knappeklassene , noen av kodeuthevingsfargene som brukes for grunnleggende kodeblokker , den .bg-primary
kontekstuelle bakgrunnshjelperklassen og standard lenkefargen når den brukes på en hvit bakgrunn) har et lavt kontrastforhold (under anbefalt forhold på 4,5:1 ). Dette kan forårsake problemer for brukere med nedsatt syn eller som er fargeblinde. Disse standardfargene må kanskje endres for å øke kontrasten og lesbarheten.
Bootstrap er utgitt under MIT-lisensen og er copyright 2019 Twitter. Kokt ned til mindre biter kan det beskrives med følgende forhold.
Den fullstendige Bootstrap-lisensen ligger i prosjektlageret for mer informasjon.
Medlemmer av fellesskapet har oversatt Bootstraps dokumentasjon til forskjellige språk. Ingen støttes offisielt, og de er kanskje ikke alltid oppdatert.
Vi hjelper ikke med å organisere eller være vert for oversettelser, vi lenker bare til dem.
Fullført en ny eller bedre oversettelse? Åpne en pull-forespørsel for å legge den til i listen vår.