Det finns ett antal sätt att du kan använda CSS-format på en webbsida, inklusive både externa stilark eller till och med inline-stilar. Om du använder ett externt stilark, vilket är det rekommenderade sättet att diktera utseendet på ett HTML-dokument, är ett tillvägagångssätt att använda
@importera.
De
@importera regel tillåter dig att viktiga externa stilark i ditt dokument - antingen till en HTML-sida eller till och med i andra CSS-dokument. Att bryta massor av stilar i ett antal mindre, fokuserade filer (en för layout, en för typografi, en för bilder etc.) kan ibland göra det lättare att hantera dessa filer och de olika stilerna som de innehåller. Om du vill ha den fördelen, är det viktigt att importera de olika filerna för att få dem alla att fungera för din webbsida.
Importera till HTML
Att använda
@importera regel i din HTML, skulle du lägga till följande i
av dokumentet:
:
Denna kod skulle nu importera det här stilarket för användning på denna HTML-sida och du kan hantera alla dina stilar i den ena filen. Nackdelen med viktiga stylesheets på detta sätt är att den här metoden inte tillåter parallella nedladdningar. Sidan måste hämta ett helt formatmall innan det går vidare till resten av sidan, inklusive alla andra CSS-filer du importerar med den här metoden. Detta påverkar din sidans hastighet och nedladdningseffekt negativt. Med tanke på hur viktigt sidprestanda är för webbsucces kan denna nackdel ensam vara en anledning till att du vill undvika att använda @import.
Alternativt tillvägagångssätt
Som ett alternativ till att använda
@importera I din HTML kan du länka till den CSS-filen så här:
Detta fungerar väldigt på samma sätt som
@importera genom att det låter dig hantera all din CSS från en central plats / fil, men den här metoden är att föredra från ett nedladdningsperspektiv. Om du fortfarande vill segmentera olika typer av stilar i separata filer kan du fortsätta att göra det och använda @import-funktionaliteten i din huvud-CSS-fil. Det betyder att dina externa CSS-filer fortfarande kan hanteras individuellt, men eftersom alla importerar till en master CSS förbättras prestanda.
Importera till CSS
Använda
kodexempel ovan skulle få "default.css" -filen att använda på din HTML-sida. Inne i den CSS-filen skulle du ha dina olika sidstilar. Du kan ha alla de stilar som är detaljerade på den ena sidan, eller du kan använda @import för att bryta dem åt för enklare hantering. Låt oss än en gång säga att vi använder 4 separata CSS-filer - en för layout, en för typografi och en för bilder. Den fjärde filen är vår "master" -fil, vilket är vad vår sida länkar till (för det här exemplet är det "default.css"). Högst upp på den här CSS-filen kan vi lägga till följande regler:
@import url ('/ styles / layout.css'); @ importera url ('/ styles / type.css'); @ import url ('/ styles / images.css');
Observera att dessa regler måste var före allt annat innehåll i din CSS-fil för att de skulle kunna fungera. Du kan inte ha någon annan CSS-stil före dessa importregler.
Under dessa importregler kan du lägga till alla andra CSS-stilar du vill ha i standardbladet. När den viktigaste CSS-filen är laddad kommer den först att importera dessa separata filer och lägga till sina stilar längst upp i stilarket. Det kommer då att ha alla dina andra stilar under dessa importerade, skapa den fullständiga CSS-filen som webbläsaren ska använda för att visa din webbplats. Du får nytta av att hantera mindre, mer fokuserade filer medan du fortfarande har ett enda stilark kopplat till i den HTML-filen.
Använda @import för mediefrågor
En sak kan du överväga att göra det att skilja din webbplatss mediefrågor för svåra webbplatsstilar i en separat fil. Eftersom dessa lyhörda stilar kan vara förvirrande när de ses tillsammans med din webbplatss andra stilregler kan det vara attraktivt att ha dem på egen hand i en annan fil. En oro med detta tillvägagångssätt är det, eftersom din
@importera Regler måste vara första, det betyder att dina mediafrågor skulle laddas innan resten av webbplatsens stilar. När du skapar en mobil först responsiv webbplats som tar hänsyn till prestanda, är det troligt att det här är ett problem. Av denna anledning föreslås det att du inte delar upp din webbplatss responsiva stilar separat och använder
@importera att föra dem till din webbplats. Ja, det kan tyckas vara fördelar med att göra det, men nackdelarna överväger dessa fördelar.
Behöver jag använda @import?
Nej det gör du inte. Många webbplatser visar helt enkelt alla sina huvudsakliga stilar i en fil och så stor som den filen kan hanteras så är det så här (så gör jag det i mitt eget arbete). Om du hittar
@importera användbart, då kan det vara en del av ditt arbetsflöde. Annars kan du säkert bygga webbsidor som ditt enkla format för alla dina CSS-regler.
Browser Support
Mycket, väldigt gamla webbläsare har problem med några av dessa @import regler, men dessa webbläsare är osannolikt att vara ett problem för dig i dessa dagar. Detta är särskilt sant nu när slutdatumet för livslängden för äldre versioner av Internet Explorer har passerat. I slutändan, om du bestämmer dig för att använda
@importera regler i din HTML eller CSS, bör du inte stöta på problem med äldre versioner av webbläsare om du inte har något märkligt behov för att stödja otroligt gamla versioner av IE.
Redigerad av Jeremy Girard