Stepping Out Med Bootstrap från Twitter

Twitter introducerade Bootstrap nyligen, ett bibliotek av CSS-format riktat till webbapputvecklare som behöver lite designhjälp. Verktygssetet innehåller allt från gallerinställningar ner till knappar och modaler, och fungerar på ganska mycket alla moderna webbläsare, hela vägen tillbaka till IE7.

Låt oss se vad vi kan göra med det?

Bootstrap förbättras också genom den mindre preprocessorn, som lägger till några ytterligare anledningar att använda Bootstrap, även om vi utesluter den mindre funktionen från omfattningen av detta handledning, för att hålla det enkelt.

Bootstrap innehåller lite dokumentation, men ingenstans förklarar det egentligen hur man använder verktyget (istället finns det bara en stor demoversida för att undersöka dig själv). Så, i den här artikeln kommer vi att ta bort Bootstraps exempelsida och analysera hur du replikerar de element som Bootstrap täcker. När vi tillhandahåller exempel bygger vi också upp en webbsida som helt och hållet är uppbyggd med Bootstrap.


Vad är täckt?

Vi ska ta en titt på följande (använd länkarna för att hoppa över till de olika delarna):

  • Grid-systemet
  • Typografi
  • tabeller
  • Blanketter och knappar
  • Navigering
  • Flikar och piller
  • Paginering
  • Varningar och felmeddelanden
  • modals

Grid-systemet

Grids är en integrerad del av många webbdesigner. Precis som en stadsplanerare designar på ett rutnät, kan en webbdesigner också anpassa sina element på ett sådant sätt. Bootstrap innehåller ett rutsystem som uppgår till 940px i bredd, inneslutet inuti behållare klass. Det finns sexton olika kolumnklasser ihop, med bredden på var och en som kumulativt lägger till 60px när antalet ökar, från 40px. Till exempel har span1-klassen en bredd på 40px, medan span3-klassen har en bredd på 160px.

Som framgår av bilden ovan kan vi använda en kombination av olika klasser för att skapa en total bredd som motsvarar 940px, inklusive 20px-marginalen som tillagd till var och en. Till exempel användningen av fyra div.span4 klasser skulle översättas, menar 220 + 20 + 220 + 20 + 220 + 20 + 220 som, när vi piskar ut räknaren, motsvarar en full 940 pixlar. Genom att omsluta alla dessa i a rad klass, Bootstrap konton för tjugo pixel marginalen i den sista kolumnen genom att flytta hela saken tjugo pixlar tillbaka.

 

Kolumn nr 1

Innehåll för kolumn 1.

Kolumn nr 2

Innehåll för kolumn 2.

Kolumn nr 3

Innehåll för kolumn 3.

Ovanstående kod kommer att generera en ganska lika uppsättning CSS-kolumner som visar lite minimalt innehåll. Naturligtvis kan vi bara byta runt några av dessa klasser eller lägga till / subtrahera taggar för att skapa olika layouter. En annan egenskap hos Bootstrap-verktygssatsen är möjligheten att "hoppa över" en kolumn genom att kompensera den. Förskjutningsklasserna är återigen numrerade 1-16 där deras bredder följer samma +60-mönster, även om de nu innehåller ytterligare 40px för att kompensera för vänster och höger marginal på kolonnen. Till exempel kan vi ta ovanstående exempel, men ta bort mellanskolonnen genom att lägga till offset5 klass till slutet taggen. Till exempel:

 

Kolumn nr 1

Innehåll för kolumn 1.

Kolumn nr 3

Innehåll för kolumn 3.

Det är ganska enkelt att manipulera detta med endast ett fåtal tal som behöver ändras, och bilden i början av det här avsnittet ska användas som en guide för några rekommenderade strukturer.


Typografi

En av de saker som går igenom ganska mycket alla element som visas i denna handledning är typografi. Bootstrap kommer med alla typografi taggar du vill ha stil för, allt från en

tagga till

och hela rubrikhierarkin. Ärligt talat är detta "Web Development 101" saker som du förmodligen redan vet, så jag slösa inte din tid för att förklara hur man stilar. Det är ganska elementära saker.

Det är viktigt att notera att Bootstrap tar hänsyn till äldre, nuförkortade taggar, så du bör inte oroa dig om du använder ett CMS som använder dem eller för en klient som inte vet något alternativ.

citerar

Var Bootstrap behöver lite mer förklarande är när du kommer att använda

märka. Du kan använda taggen på egen hand för att visa citatet indragna, med en tjock gräns till vänster. Det kan dock förbättras genom att näsa andra taggar inuti för att ange citatet. När det gäller att lägga till ett attribut klickar du bara på din citattext i en

taggen och källan i a tagg och Bootstrap kommer automatiskt att stile och sätta en streck framför källan.

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer ställer upp en tidigare väntningsfras.

Connor Turnbull, 30 augusti

Du kommer att sluta med ett resultat som liknar bilden nedan, beroende på vilket innehåll du lägger in mellan stycket och små taggar.

listor

Listor är en annan typ av typografi spektrum som är täckt i Bootstrap, och levereras med fyra olika uppsättningar av stilar: punktlistor, inbyggda punktlistor, beställda listor och ordlistor. Återigen är det inte så svårt att använda som de inte avviker från vad som är standard i HTML. Eftersom listor kan konstrueras på olika sätt, här är en snabb sammanfattning av hur man använder dem med Bootstrap-stilar.

Koden nedan är en grundläggande oorderad punktlista som kommer att ge något som liknar det första exemplet i bilden nedan. Byt ut ul för en ol att producera en beställd lista, som i det andra exemplet.

  • Lorem ipsum dolor sit amet
  • Consectetur adipiscing elit
  • ?

Om du lägger till unstyled klassen till den oordnade listan, kommer inte obelastade listobjekt att vara punktljusade eller beställda. De kommer bara att se ut som vanliga linjer, medan nestade objekt kommer att ha en kula till vänster.

  • Lorem ipsum dolor sit amet
  • Consectetur adipiscing elit
  • ?

Lägga till en beskrivningslista görs på samma sätt som du förväntar dig utanför Bootstrap, och resulterar i ett prov som det sista i bilden ovan.

Lorem ipsum
Lorem ipsum dolor sit amet
Consectetur
Consectetur adipiscing elit
?

tabeller

Bootstrap är en verktygslåda som delvis syftar till nya webbdesigners, så det betyder inte nödvändigtvis att dessa saker inte är avsedda för layouter. Istället är tabeller avsedda för tabelldata, och Bootstrap gör ett ganska bra jobb för att förse dina tabulära data med sina stilar utan att behöva några ytterligare klasser eller attribut. Till exempel kan vi titta på en vanlig HTML-kod som skulle generera ett bord.

# Förnamn Efternamn Språk
1 Några Ett engelsk
2 Joe Sexpack engelsk
3 stu Buckla Koda

Koden ovan skapar tabellen i bilden nedan, som används i Twitters officiella exempel. Den har tre innehållsrader och en rubrik i fyra kolumner, och är ganska standard. Med liten manipulering (skrapa det, ingen manipulation) till standard skapandet av ett bord, använder Bootstrap automatiskt sina stilar.

I det här fallet är det viktigaste att komma ihåg är att korrekt näsa dina taggar. Stilarna gäller inte om du inte sätter in din rubrikrad i en tagg, till exempel.

Som standard är tabellen inte sebra-randig, där alternativa färger kan fylla bakgrunden på varje rad. Det här är enkelt att aktivera, men helt enkelt genom att lägga till zebra-striped klass till

tagg utan manipulation av raderna eller enskilda delar.

?

Slutligen, med tillägg av en liten del jQuery, men ingen ändring till HTML bortsett från att lägga till sortTableExample som ID av

#
tagg kan du lägga till sorteringsfunktionalitet när rubriken på en kolumn klickas på. Denna funktion kräver Tablesorter 2.0 jQuery-plugin, som kan laddas ner gratis. Som du förmodligen redan gissat behöver du också ringa jQuery för att detta ska fungera.

  
?

Blanketter och knappar

De flesta av de saker vi redan har täckt är ganska enkla, där Bootstrap kommer att tillämpa stilar på din kod med liten eller ingen ändring från normal. Att få det ur vägen kan vi nu flytta på några saker som kräver lite mer förklarande och lite mer handledning.

formulär

För formulär finns det många olika stilar du kan använda, så vi ska titta på var och en individuellt. Du kan då bara använda dessa i kombination med varandra och manipulera dem med existerande kunskaper om vanliga gamla HTML-formulär.

För det första bör det noteras att hela din form ska vara inslagna i en
taggar, men du vet förmodligen redan det. Bootstrap rekommenderar också att du sätter in dina element i

taggar, med ytterligare ett märka.

 
Lorem ipsum dolor sit amet (dina fält går här)

Vanligtvis bör din formuppsättning inte skilja sig från koden ovan. Det enda andra alternativet som Bootstrap tillhandahåller är att välja staplade formulär, där etiketterna ligger högst upp i ett fält snarare än till vänster. Det kan uppnås genom att lägga till form staplade klass till
märka.

 

Textinmatning

För att sparka ut vår täckning av formulärfält ser vi på ett vanligt inmatningsfält med en etikett. Koddelen nedan är väsentligen a och en tagg, inslagna i a

tagga med clearfix klass för att säkerställa korrekt avstånd. Dessutom är det aktuella fältet inslaget i en annan
med inmatning klass igen, för att säkerställa korrekt avstånd.

För den här handledningens skull kommer jag att ignorera några metoder som ska användas i din kod. Till exempel bör varje ingång ha ett ID, som är bundet till etiketten genom att "för" -attributet, och i allmänhet vill du namnge dina inmatningsfält för att fånga dem när det gäller att behandla dina data. Vi tittar specifikt på hur du använder Bootstraps stilar här, så att dessa typer av attribut inte har inkluderats i mina exempel för att försöka hålla saker så enkla som möjligt. Men trots att de används tillsammans med Bootstrap bör dessa uppgifter inte glömmas bort.

Genom att lägga till extra stor klass till , formfältet utökas.

Vi kan inaktivera en inmatning på vanligt sätt, genom att lägga till lämpliga attribut, vilket visas i exemplet nedan. Bootstraps stilar läggs till i Inaktiverad klass, som bör läggas till för att visuellt visa att en användare inte kan interagera med det fältet genom att gräva ut det.

Medan den gråtonade tillvägagångssättet för ett funktionshindrat fält uppnås genom att använda en tagg, en oåtkomlig en är inte. Istället använder Bootstrap en enkel som kan användas i samband med en dold ingång. Dessa fält används för information som användaren inte ska redigera, till exempel ett automatiskt samlat datum eller IP-adress.

Lorem ipsum dolor sit amet

Vår sista titt på styling textinmatningar är att visa kontextuell hjälp när ett fel uppstår. Det görs genom att lägga till en fel klass till

som utgör clearfixen, och till tagga sig själv. Lägga till en tagga med help-inline klassen nedan lägger till hjälpmeddelandet på höger sida.

Dolor sit amet

Dropdown Select

En rullgardinsmeny är strukturerad på liknande sätt, med den vanliga koden som används, som visas nedan.

De extra stor klass till ett textfält är motsatsen till medium klass till a Lorem ipsum dolor sit amet

Den koden skapar en enda kryssruta med en etikett till höger. För att skapa en extra, bara repetera listobjektet och dess innehåll, sedan voil?, Du har en lista över kryssrutor.

För att inaktivera en kryssruta, lägg bara till Inaktiverad attribut till taggen och Inaktiverad klass till märka.

  • Dessutom finns det två extra typer av kryssrutor som är parade med textfält: kryssrutor i förväg och bifogade. Återigen är det ganska självförklarande och ligner mycket på ett vanligt textfält. Men den här gången måste du lägga i kryssrutan i en tagg (med tillägg klass), och antingen input-prepend eller den input-append klass till förälder

    . Då är allt som finns kvar att se till att du sätter etiketten och fältet på rätt sätt runt, beroende på om du vill att den ska läggas upp eller bifogas.

    Ovanstående kod är för en bifogad kryssruta, men om du vill ha en prepended, finns det lite att ändra.

    Filinmatningar

    Filinmatningar är väldigt mycket som textfält och koden nedan är ganska självförklarande. Skapa en vanlig filinmatning med indatafil klass.

    Textområden

    Den slutliga Bootstrap-stilen för formulär är textområdet. Textområdet skapas på samma sätt som textfältet med en rad. Liksom att förstora ett textfält, har textområdet också sin egen klass för att göra det bredare, XXLarge.

    Eventuellt kan du lägga till en liten hjälprad under fältet med följande rad läggas direkt efter

    #