I den här handledningen kommer vi att skapa en kodfält som visar exempelkod på webbsidor på ett snyggt formaterat och lättläst sätt, ungefär som det du ser här på Webuts. Kodfragmentet förhandsgranskningsrutor som detta görs ofta som Wordpress-plugins, men vi får se hur vi kan göra samma sak med bara en liten jQuery och CSS.
Vi kan lägga till alla förväntade funktioner som linjenummering och linjebandning och alla vanliga verktyg som att visa koden som vanlig text och skriva ut det på ett skrivarvänligt sätt. Följande skärmdump visar vilken typ av sak som vi kommer att sluta med i slutet av handledningen:
Kodfältet kommer att byggas från en underliggande element; Det här är det perfekta elementet att använda eftersom det gör vad som helst som du lägger in det som vanlig text i ett fastbreddstypsnitt som monospace, vilket är idealiskt för att visa kodprover på ett tydligt och kortfattat sätt. Det bevarar också raderingar som är en funktion som vi kan utnyttja för att lägga till radnummererings- och randfunktionerna.
En annan anledning till att vi använder taggen beror på att den utgör en idealisk grund för vår kodlåda; i webbläsare med JavaScript inaktiverat, eller de som helt enkelt inte stöder det, kommer koden fortfarande att bli acceptabel. Det kommer att sticka ut från resten av texten på sidan och det kommer inte att degenerera till något helt värdelöst och löjligt.
Börja med den följande sidan i din textredigerare:
jQuery kodfältet CSS-kod:
#selector color: # 000000; .andraväljaren font-size: 20px; gränsen: 1px solid # 000000; padding: 20px; tagnam bredd: 100%;
Spara sidan som code-snippet.html i en katalog som redan har den nuvarande versionen av jQuery som ligger inom den. Med ingen styling och inget manusintervall ska sidan se ut så här:
Som standard återgång är det acceptabelt; om sidan hade annan kroppstext på den, elementet skulle sticka ut som ett separat textblock och skulle fortfarande vara lite kodliknande.
Låt oss börja med att lägga till den randande effekten som gör att varje rad skiljer sig från de ovan och under den och linjenummeringen som kommer att visas när en trasig linje (som övergår till två eller flera rader) är en del av en rad exempelkod.
I den tomma >