Hvis du gjør noe nettrelatert, er sjansen stor for at du har hørt om Bootstrap. Hvis du fremdeles ikke vet hva Bootstrap er, eller bare ønsker å finne en Bootstrap-opplæring for nybegynnere for å få en bedre oversikt over hva det er og hva det gjør best, har du kommet til rett sted.
Støvelhempe er en kraftig verktøysett - en samling av HTML-, CSS- og JavaScript-verktøy for å lage og bygge websider og webapplikasjoner. Det er et gratis og åpen kildekode-prosjekt GitHub , og opprinnelig opprettet av (og for) Twitter .
Så hvorfor lære Boostrap?
Etter utgivelsen av åpen kildekode i 2011 ble Bootstrap populær veldig raskt, og ikke uten grunn. Webdesignere og nett utviklere som Bootstrap fordi den er fleksibel og enkel å jobbe med. Hovedfordelene er at den er responsiv av design, den opprettholder bred nettleserkompatibilitet, den gir jevn design ved å bruke gjenbrukbare komponenter, og den er veldig enkel å bruke og rask å lære. Det tilbyr rik utvidbarhet ved hjelp av JavaScript, med innebygd støtte for jQuery-plugins og et programmatisk JavaScript API. Bootstrap kan brukes med hvilken som helst IDE eller editor, og hvilken som helst server-side teknologi og språk, fra ASP.NET til PHP til Ruby on Rails.
Med Bootstrap, webutviklere kan konsentrere seg om utviklingsarbeidet, uten å bekymre seg for design, og få et flott nettsted til å gå raskt i gang. Omvendt gir det webdesignere et solid grunnlag for å lage interessante Bootstrap-temaer.
Bootstrap er tilgjengelig i to former; som en forhåndskompilert versjon, og som en kildekodeversjon. Kildekodeversjonen bruker Mindre CSS preprosessor, men hvis du er mer interessert i Sass, er det en offisielle Sass-port av Bootstrap også tilgjengelig. For å gjøre det lettere å bruke CSS-leverandørprefikser, bruker Bootstrap Autofrefixer .
Kildekodeversjonen leveres med kildekoder skrevet i Less (eller Sass), all JavaScript og tilhørende dokumentasjon. Dette gjør at mer ambisiøse designere og utviklere kan endre og tilpasse, etter eget ønske, alle de stilene som følger med, og å bygge sin egen versjon av Bootstrap. Men hvis du ikke er kjent med Less (eller Sass), eller bare ikke er interessert i å endre kildekoden, ikke bekymre deg. Du kan bare bruke den forhåndskompilerte vaniljen CSS. Alle stilene kan overstyres senere ved å bruke egendefinerte stiler.
Vi vil fokusere på den forhåndskompilerte versjonen, som kan lastes ned her . Når du laster ned zip-arkivet og pakker ut det, ser den grunnleggende filstrukturen slik ut:
bootstrap/ ├── css/ │ ├── bootstrap.css │ ├── bootstrap.css.map │ ├── bootstrap.min.css │ ├── bootstrap-theme.css │ ├── bootstrap-theme.css.map │ └── bootstrap-theme.min.css ├── js/ │ ├── bootstrap.js │ └── bootstrap.min.js └── fonts/ ├── glyphicons-halflings-regular.eot ├── glyphicons-halflings-regular.svg ├── glyphicons-halflings-regular.ttf ├── glyphicons-halflings-regular.woff └── glyphicons-halflings-regular.woff2
Bootstrap-strukturen er ganske enkel og selvforklarende. Den inkluderer forhåndskompilerte filer som muliggjør rask bruk i ethvert webprosjekt. Foruten kompilerte og minifiserte CSS- og JS-filer, inkluderer den også skrifter fra Glyphicons , og valgfritt start Bootstrap-tema.
Denne strukturen kan enkelt innlemmes i filstrukturen til ditt eget prosjekt ved å bare inkludere Bootstrap-filene nøyaktig når de kommer ut av zip-arkivet, eller hvis det passer bedre for prosjektet ditt, kan du omorganisere disse filene og plassere dem hvor som helst. Bare vær sikker på at Glyphicons-skrifttypemappen er på samme nivå som CSS-mappen.
En grunnleggende Bootstrap HTML-mal skal se ut slik:
Bootstrap Template
Det er viktig å starte hvilken som helst HTML med en HTML 5 Doctype-erklæring, slik at nettlesere vet hva slags dokument de kan forvente. Hodet inneholder tre viktige merker som må erklæres først, og eventuelle ekstra hodemerker må legges til etter disse. Hvis du vil støtte eldre nettlesere som IE8, kan du også inkludere HTML 5 shim i hodet, som vil muliggjøre bruk av HTML5-elementer i eldre nettlesere, og Respond.js , som vil fylle ut CSS3 Media Queries, i de gamle versjonene av Internet Explorer.
...
Selv om dette ikke er veldig viktig hvis du bare målretter mot moderne nettlesere.
JavaScript-filer blir lagt til på slutten av kroppen, slik at websiden kan lastes synlig før JavaScript kjøres. jQuery er nødvendig for Bootstrap-plugins, og må lastes inn før bootstrap.js
. Hvis du ikke bruker noen av Bootstraps interaktive funksjoner, kan du også utelate disse filene fra kilden.
Dette er det minste minimum som er nødvendig for å få et grunnleggende Bootstrap-oppsett. Hvis du er utvikler, vil du sannsynligvis ta en titt på noen mer avanserte eksempler på Bootstraps eksempleside . Hvis du er designer, eller bare leter etter inspirasjon, Bootstrap Expo viser nettsteder som er bygget med Bootstrap. Som vi får se senere, kan alle deler av Bootstrap enkelt tilpasses i CSS. Men hvis det ikke er din ting, og du leter etter et litt annet utseende og preg fra de forhåndspakkede Bootstrap-temaene, er det mange gratis temaer med åpen kildekode og premium tilgjengelig fra kilder som Bootswatch og WrapBootstrap .
Bootstrap leveres med grunnleggende HTML- og CSS-designmaler som inkluderer mange vanlige UI-komponenter. Disse inkluderer typografi, tabeller, skjemaer, knapper, glyfikon, rullegardin, knapper og inngangsgrupper, navigering, paginering, etiketter og merker, varsler, fremdriftslinjer, modeller, faner, trekkspill, karuseller og mange andre.
Mange av disse bruker JavaScript-utvidelser og jQuery-plugins.
Disse Bootstrap-malene blir gjort tilgjengelige som velvurderte CSS-klasser som du kan bruke på HTML-en din for å oppnå forskjellige effekter. Dette gjør bruk av Bootstrap veldig praktisk. Ved å bruke semantiske klassenavn som .success
, .warning
og .info
, er disse komponentene lett gjenbrukbare og utvidbare. Men mens Bootstrap bruker beskrivende klassenavn som har betydning, er det ikke spesifikt om implementeringsdetaljer. Alle klasser kan overstyres med tilpasset CSS-stil og farge, og fortsatt vil betydningen av klassen være den samme.
Før vi dykker mer inn i Bootstrap-komponenter og designmaler, er det viktig å nevne en av de viktigste funksjonene som Bootstrap introduserte i versjon 3: a mobil-første design filosofi, som resulterte i en Bootstrap som er responsiv av design. Sluttresultatet er at Bootstrap enkelt og effektivt skalerer med en enkelt kodebase, fra telefoner, gjennom nettbrett, til stasjonære datamaskiner.
Denne responsen oppnås ved hjelp av et flytende Bootstrap-rutenettsystem som kan brukes til å skalere riktig opptil 12 kolonner i henhold til størrelsen på enheten eller visningsporten. Rutenett gir struktur til oppsettet, og definerer de horisontale og vertikale retningslinjene for å arrangere innhold og håndheve marginer. Rutenett har også en intuitiv struktur for seere, fordi det er enkelt å følge fra venstre mot høyre eller en høyre til venstre flyt av innhold som beveger seg nedover på siden. Før rutenett, og før CSS var så kraftig, ble rutenettbaserte oppsett oppnådd ved å bruke tabeller der innholdet skulle ordnes i bordceller. Da CSS ble mer moden, begynte det å vises en rekke CSS-rammer for nettbaserte oppsett. Disse inkluderer YUI rutenett , 960 GS og blåkopi , for å nevne noen.
For å bruke Bootstrap-rutenettet, noen få regler må følges . Rutenettkolonneelementer er plassert i radelementer, som skaper horisontale kolonnegrupper. Du kan ha så mange rader du vil på siden, men kolonnene må være umiddelbare underordnede rader. I en hel rad vil kolonnebreddene være en hvilken som helst kombinasjon som legger opp til 12, men det er ikke obligatorisk å bruke alle de 12 tilgjengelige kolonnene.
Radene må plasseres enten i en layoutomslag med fast bredde, som har .container
klasse og en bredde på 1170 piksler, eller i fullbredde layoutomslag, som har .container-fluid
klasse, og som muliggjør responsiv oppførsel i den raden.
Bootstrap-rutenettet har fire klasser: xs for telefoner (<768px), sm for tabletter (≥768 px), md for skrivebord (≥992 px), og LG for større skrivebord (≥1200 px). Disse definerer i utgangspunktet størrelsene der kolonnene vil kollapse eller spre seg horisontalt. Klassene kan brukes i alle kombinasjoner for å få dynamiske og fleksible oppsett.
Hvis vi for eksempel vil få to rader, en med to kolonner og en med fire, kan vi skrive:
First column Second column First column Second column Third column Fourth column
Vi kan også bruke blandede kolonnebredder:
Wider column Smaller column
Vi kan til og med skifte kolonner ved å bruke offset, for eksempel for å lage mer smalt og sentrert innhold:
Centered column
Kolonner kan nestes. Det kan være færre enn 12 kolonner, og som nevnt ovenfor kan vi velge kolonner med fast bredde eller full bredde ved å bruke .container
eller .container-fluid
innpakninger, henholdsvis.
Parent fixed-width column Nested column Nested column Fluid .. .. and full-width .. .. example
Hvis vi kombinerer forskjellige klassetrinn, vil vi få forskjellig utseende på mobil og på stasjonære visninger. I eksemplet nedenfor vil det på skrivebordet være fire kolonner på en linje, og på mobilen vil de ha full bredde og stabel på hverandre.
.col-xs-12 .col-md-3 .col-xs-12 .col-md-3 .col-xs-12 .col-md-3 .col-xs-12 .col-md-3
Det er mulig å deaktiver sidesvar helt. Dette vil i utgangspunktet deaktivere 'mobile site' aspektene av Bootstrap. Bare husk at hvis du deaktiverer respons, vil ikke alle komponenter med fast bredde, for eksempel en fast navbar, ikke være synlig når visningsområdet blir smalere enn sideinnholdet. For en ikke-responsiv container betyr det en bredde på 970 px. Også i dette tilfellet vil navfelt ikke kollapse i mobilvisninger som beskrevet senere.
Dette er bare grunnleggende eksempler. For å se nettets fulle potensiale, sjekk ut Bootstraps Grids-dokumentasjon .
Begynnende utviklere antar ofte at deres rene og ikke-stilede HTML vil se likt ut i alle nettlesere. Dessverre har hver nettleser sitt eget standard 'user agent' stilark som brukes på HTML, og ingen nettlesere har de samme standardinnstillingene. For eksempel er skriftstørrelser for overskrifter ikke konsistente på tvers av nettlesere, noen uordnede og ordnede lister har venstre marginer og andre har igjen polstring, nettlesere bruker tilpassede kanter og polstring i HTML-brødteksten, og til og med knapper gjengis forskjellig på tvers av nettlesere. For å løse alle disse uoverensstemmelsene ble det født forskjellige CSS 'reset' -regler som definerer konsistente standardinnstillinger.
Bootstrap bringer noen flere godbiter til bordet i tillegg til ren CSS-tilbakestilling. Den kommer med normalisere.css , et HTML5-klart alternativ til CSS-tilbakestillinger, og det har også noen egenutviklede standardverdier. For eksempel angir Bootstrap den globale standard font-size
til 14 px, med en linjehøyde på 1.428. Standardskrifttypen endres til Helvetica / Arial, med sans serif fallback. Alle disse stilene brukes på alle avsnitt, med tillegg (avsnitt) mottar en bunnmargin på halvparten av den beregnede linjehøyden (10px som standard). I tillegg til disse standardene er det også tilpassbare stiler for standard HTML-koder som gir mer konsistens til teksten, for eksempel uthevet tekst (), slettet tekst (og), understreket tekst (), liten tekst () og fet tekst (
). Justeringsklasser hjelper deg med å ordne innhold på siden lettere ved å bruke .text-left
, .text-center
, .text-right
, .text-justify
og .text-nowrap
klasser. Det er også forhåndsdefinerte stiler for blokketilbud, og uordnet og ordnet liste, med innebygde alternativer, bare for å nevne noen. For å få en full liste, gå til Bootstrap Typography-side .
En interessant ting som Bootstrap også muliggjør, er at du kan bruke for eksempel overskriftsstiler ved å bruke enten eller
.h1
klasse. Sistnevnte vil matche stylingen til overskrift, men vil tillate at teksten vises integrert.
Skjemaer har kommet langt gjennom årene, og i dag er bruk av et webskjema en av de vanligste aktivitetene som utføres mens du surfer på nettet. Mens HTML5 introduserte en rekke nye skjemaattributter, inndatatyper og andre hjelperelementer, har nettlesere ikke forbedret skjemaene visuelt. Dette er et område der Bootstrap virkelig skinner, fordi det kan være vanskelig å justere og utforme etiketter og innganger, validere skjemaer og vise feilmeldinger uten litt hjelp.
Først setter Bootstrap alle tekstlige inngangselementer, som ,, og, til 100% bredde på det overordnede skjemaelementet. Det gir deg også muligheten til å velge mellom innebygde skjemaer, som gjengir flere etiketter og inndatafelt på samme linje, ved å bruke .form-inline
klasse eller horisontale former, som bruker rutenett for å justere hver inngang i sin egen rad, ved hjelp av .form-horizontal
klasse. Og hvis du trenger å plassere ren tekst ved siden av en skjemaetikett, i stedet for inntastingsfeltet, kan du gi den .form-control-static
klasse for å få den til å matche det visuelle utseendet på skjemaet.
Kanskje den største funksjonen som Bootstrap bringer til skjemaer, er valideringsstiler for feil-, advarsel- og suksessstatus. Disse kan brukes med .has-warning
, .has-error
, og .has-success
klasser, henholdsvis. Ved å kombinere dette med ikoner som kan plasseres inne i inngangsskjemaene, kan vi få raske og effektive formvalideringseffekter, selv uten å bruke noen feiltekstmeldinger.
Følgende kodebit genererer et inndatafelt med et @ -tegn, for å indikere at vi leter etter en e-post, og med et advarselikon og en gul omriss som indikerer at det er noe galt i inndatafeltet.
Email address input field with warning @ (warning)
Igjen har vi bare skrapt overflaten her. For flere eksempler, ta en titt på Bootstraps Forms-dokumentasjon .
Bilder i Bootstrap kan gjøres responsive ved å bare gi dem .img-responsive
klasse. Dette vil gjelde max-width:100%;
height:auto;
og display:block;
til det aktuelle bildet, slik at det skaleres til det overordnede elementet.
Foruten å gjøre bilder responsive, kan vi enkelt legge til forskjellige effekter. For eksempel påføres avrundede hjørner med .img-rounded
klasse, og bildet kan formes til å være en sirkel ved å bruke .img-circle
, eller til et miniatyrbilde ved å bruke .img-thumbnail
klasse.
Bootstrap leveres med over 260 tegn i skriftformat, fra Glyphicons Halflings sett. Jan Kovařík, forfatter og designer av Glyphicons, har gjort dem tilgjengelig for Bootstrap gratis og under samme lisens som Bootstrap, noe som er fantastisk. Skrift ikoner har mange fordeler over vanlige rasterbilder, en stor er at de er skalerbare. De kan også enkelt tilpasses ved hjelp av bare CSS, så det er en lek å manipulere størrelse eller farge, eller til og med legge til en dråpe i skyggen.
Knapper er en av tingene hver nettleser gjengir helt annerledes. Hvis du vil ha konsistent design i alle nettlesere, er dette potensielt et stort problem. Heldigvis har Bootstrap en elegant løsning for knappene også. Og i tillegg til å gjøre dem konsistente, gir det mange variasjoner å leke med. Du kan bruke .btn
klasse til
andelements. Du kan gruppere en serie knapper sammen til en enkelt linje ved hjelp av .btn-group
klasse på foreldrene. Med litt hjelp fra JavaScript kan du opprette radio- og avkrysningsboksstil på knappene. Eller du kan gjøre knappene dine om til rullegardinmenyer ved å plassere den i et .btn-group
, og gi riktig menyoppmerking av uordnet liste over elementer.
Navigasjonsfeltet, eller navbar, er en Bootstrap-komponent designet spesielt for å bygge den primære navigasjonsmenyen på nettstedet. På store skjermer vises den horisontalt, og på små og mobile skjermer (de under 768 px) ble den forvandlet til en Rullegardinmenyen “hamburger” . Under panseret er navbar en ikke-ordnet integrert liste over menyelementer, med flere HTML-elementer som legges til etter ønske. Blant de mulige tilleggene er merkevarebygging (enten tekst eller logo), skjemaelementer som søkefelt og rullegardinmenyer. To stiler er tilgjengelige å velge mellom utenom boksen: lys og mørk, invertert. Elementer i navlinjen kan justeres til venstre eller høyre ved å bruke .navbar-left
eller .navbar-right
klasser, henholdsvis.
Navbars kan ha 4 forskjellige posisjonsatferd. De standard flottørposisjon har bufferplass rundt seg; de statisk navbar i full bredde ruller bort når brukeren ruller nedover siden, og fast navbar , som kan være enten øverst eller nederst i vinduet, er alltid synlig på siden, uansett hvor brukeren har rullet til.
Dette dekker bare noen få av de flotte Bootstrap-komponentene som setter Bootstrap foran lignende rammer, biblioteker og verktøysett. Med Bootstrap er det bare noen få enkle CSS-klasser som trengs for å bygge en responsiv og vakker frontend, raskt og enkelt. Det er et flott utgangspunkt for ditt neste store prosjekt eller oppstart.
Bootstrap er et kraftig frontend-rammeverk som brukes til å lage moderne nettsteder og webapper. Det er åpen kildekode og gratis å bruke, men har likevel mange HTML- og CSS-maler for UI-grensesnittelementer som knapper og skjemaer. Bootstrap støtter også JavaScript-utvidelser.
Programvareingeniører bruker Bootstrap av flere forskjellige årsaker. Det er enkelt å sette opp og mestre, det har mange komponenter, et godt rutenettsystem, styling for mange HTML-elementer, alt fra typografi til knapper, samt støtte for JavaScript-plugins, noe som gjør det enda mer fleksibelt.
Bootstrap er flott for å lage oppsett, da den responsive CSS er designet for å samsvare med forskjellige enheter. Den kan brukes for å sikre konsistens, eliminere problemer i flere nettlesere og så videre.
Et Bootstrap-tema er en pakke som inneholder CSS-, HTML- og JavaScript-kode som brukes til styling. Bootstrap-temaer har også forskjellige UI-komponenter og sideoppsett som kan brukes til å lage nettsteder. Du kan tenke på dem som nettstedsmaler opprettet med Bootstrap i tankene.