Kom ihåg mig?
Home Menu

Menu


Inbäddad CSS i CMS för optimeringens skull?

Ämnesverktyg Visningsalternativ
Oläst 2010-09-28, 17:15 #1
kristoferaberg kristoferaberg är inte uppkopplad
Nykomling
 
Reg.datum: Sep 2010
Inlägg: 7
kristoferaberg kristoferaberg är inte uppkopplad
Nykomling
 
Reg.datum: Sep 2010
Inlägg: 7
Standard Inbäddad CSS i CMS för optimeringens skull?

Ska man optimera en sajt, så uppmanas man ju ofta att ha så få http requests som möjligt, exempelvis minska antalet CSS-filer. Men borde inte det ultimata vara att ha inbäddad CSS, och inga länkade?

I läroböcker tas det upp att man ska ha länkat, men detta hänvisar ju då till en teknologi där man har olika html-sidor där det då är dålig standard att bädda in CSS eftersom samma innehåll laddas gång efter gång och inte cachas. Men för dynamiska CMS, så är det ju inte en massa olika html-sidor, utan till exempel en index.php som ens mall etc är uppbyggd av. Så innebär det att man bör köra på inbäddad CSS?
kristoferaberg är inte uppkopplad   Svara med citatSvara med citat
Oläst 2010-09-28, 17:33 #2
StefanBergfeldts avatar
StefanBergfeldt StefanBergfeldt är inte uppkopplad
Bara ett inlägg till!
 
Reg.datum: Sep 2004
Inlägg: 1 535
StefanBergfeldt StefanBergfeldt är inte uppkopplad
Bara ett inlägg till!
StefanBergfeldts avatar
 
Reg.datum: Sep 2004
Inlägg: 1 535
Du vill inte att samma innehåll ska behöva läsas in flera gånger, därför har du en extern css-fil som kan cachas mellan requesten.
Även om du bara har en index.php som sköter alla anrop så gör du ju flera requests (när du byter sida), och varje gång sidan läser om så gäller samma sak, dvs en extern css-fil cachas, medans html-koden läses om.
StefanBergfeldt är inte uppkopplad   Svara med citatSvara med citat
Oläst 2010-09-28, 17:48 #3
gfors gfors är inte uppkopplad
Flitig postare
 
Reg.datum: Apr 2010
Inlägg: 346
gfors gfors är inte uppkopplad
Flitig postare
 
Reg.datum: Apr 2010
Inlägg: 346
Kort svar, alltid extern css fil förutom vid väldigt speciella omständigheter (exempelvis nyhetsbrev med html). Att ha css koden i html koden är en mycket dålig vana som anses ytterst felaktig, av många skäl.

Däremot får man gärna hålla nere mängden css-filer, många dras ju åt att skapa en helt egen css fil för varje del av koden.
gfors är inte uppkopplad   Svara med citatSvara med citat
Oläst 2010-09-28, 20:19 #4
taz76 taz76 är inte uppkopplad
Flitig postare
 
Reg.datum: Jan 2008
Inlägg: 388
taz76 taz76 är inte uppkopplad
Flitig postare
 
Reg.datum: Jan 2008
Inlägg: 388
Vad jag läst så ska inbäddad CSS vara långsammare än extern.
taz76 är inte uppkopplad   Svara med citatSvara med citat
Oläst 2010-09-28, 22:44 #5
StefanBergfeldts avatar
StefanBergfeldt StefanBergfeldt är inte uppkopplad
Bara ett inlägg till!
 
Reg.datum: Sep 2004
Inlägg: 1 535
StefanBergfeldt StefanBergfeldt är inte uppkopplad
Bara ett inlägg till!
StefanBergfeldts avatar
 
Reg.datum: Sep 2004
Inlägg: 1 535
inbäddad CSS är INTE långsammare än extern

Ett tillfälle när det faktiskt ÄR befogat att ha CSSen inbäddad är när du har en sajt som bara har en sida, och inte gör postbacks. Då vinner du ju en request på att ha den inbäddad. Antagligen gör det väldigt liten skillnad, så av helt andra skäl skulle jag ändå rekommendera en extern css
StefanBergfeldt är inte uppkopplad   Svara med citatSvara med citat
Oläst 2010-09-28, 23:44 #6
dAEks avatar
dAEk dAEk är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Dec 2006
Inlägg: 678
dAEk dAEk är inte uppkopplad
Mycket flitig postare
dAEks avatar
 
Reg.datum: Dec 2006
Inlägg: 678
Citat:
Ursprungligen postat av taz76 Visa inlägg
Vad jag läst så ska inbäddad CSS vara långsammare än extern.
Ska du komma med den här typen av påståenden får du gärna berätta lite mer.
dAEk är inte uppkopplad   Svara med citatSvara med citat
Oläst 2010-09-29, 09:36 #7
gfors gfors är inte uppkopplad
Flitig postare
 
Reg.datum: Apr 2010
Inlägg: 346
gfors gfors är inte uppkopplad
Flitig postare
 
Reg.datum: Apr 2010
Inlägg: 346
Inbäddad css skapar helt bedrövlig kod, och visar på bristande förståelse för hur en webbplats bör vara uppbyggd.

Sen är det ju också viktigt att skilja på inbäddad och inbäddad. Om vi pratar om riktig inline css, d.v.s. "<p style="font-weight: bold;">Hej</p>" så är det väldigt annorlunda än att sätta ett <style> block i sin header där man anger all css. Bägge är dock fel i 9 fall av 10.

God praxis idag är att att inline-css (med stil på enskilda taggar) aldrig bör användas, och om du känner att du måste ha css i html filen så gör det då i ett <style> block, annars blir sidan ett elände av dålig kod som är omöjlig att överblicka. Men en extern fil är alltid bäst ur alla perspektiv, enda nackdelen är att man får läsa in en pytteliten css fil en gång (sedan är den oftast cachad).

Undantaget som jag sa tidigare är html-nyhetsbrev via mail, och som Stefan nämnde även om man har 1 sida html (även om det fortfarande är mer korrekt att separera css-koden från html-koden).

Och om man nu vill vara så otroligt optimerad att man ska spara in på att skicka en liten css fil, så är det ofta det sista på listan. Dålig, uppsvälld kod, tillsammans med javascript filer, och bilder utan rätt komprimering m.m. är ofta 100ggr större bovar om man vill optimera sin sida än den externa css-filen som faktiskt är korrekt beteende.

Den enda inline-css koden som skapas idag kommer från personer som använder diverse dåliga WYSIWYG-editorer, eller lärde sig webbutveckling på 90-talet (och slutade lära sig där!).
gfors är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 00:14.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017