Det pågår, eller snarare - det har pågått en trend bland webutvecklare att göra sina sidor med kod enbart med CSS. Det har blivit den senaste innegrejen - att lyckas skapa en väldesignad sida enbart med hjälp av CSS. Inte en enda tabell ska man ha i sin layout.
Det var en nyligen som frågade mig varför jag inte hängt med på den här trenden, och svaret är rätt så enkelt; Jag är inte ute efter att det ska vara så svårt som möjligt för mig att skapa en sida. Om vi bortser de över sjuttiotusen rader kod som Atlas består av och som måste uppdateras på något vis, så är det fortfarande ett himla jobb att skapa en design med enbart CSS. Något som i regel är dödsenkelt med en enkel tabell.
För om det är något alla dessa CSS-sidor har gemensamt så är det att dom har en mycket begränsad och primitiv design. Snygg och enkel, javisst, men det är väldigt tydligt att dom fått lov att göra eftergifter vad gäller designen. Och det är ju inte så konstigt. Läser man böcker som till exempel CSS Mastery av Andy Budd eller Designing with Web Standards med Zeldman så blir det snabbt väldigt tydligt att för att skapa ett visst utseende så måste man veta "knepet". Alltså, poängen är att få en sida att se ut på ett visst sätt är beroende av att man lyckas lista ut hur man ska göra det med CSS.
Och oftast så innebär knepen att man ska lura webbläsaren X att använda en CSS-standard på ett sätt det inte är tänkt för att uppnå ett visst resultat, tills man inser att det inte stöds av webbläsare Y eller Z. Jag har full respekt för att många webbutvecklare tycker detta är en uppgift värdig att lösas, och för många är det bara en fråga om att skapa nya mallar till nästa uppdrag. Det är inte riktigt lika lätt för mig, eftersom Atlas är ett enda projekt.
Grundanledningen till CSS är i regel att kunna använda väldigt lite kod för att uppnå en hög nivå av flexibilitet. Man ska enelt kunna skriva:
<ul class='tabs'>
<li>Flik ett
<li>Flik två
</ul>
Och sen med lite magisk CSS så skulle ovanstående bli en fantastiskt trevlig flikmeny. Och visst, det är fullt möjligt. Det är så jag gör här till exempel. Flikarna i toppen är CSS-only. Men på MälarNetCity så har jag fem flikar i toppen som inte är gjorda med CSS. Skillnaden är att dem på MNC har rundade hörn.
Men man kan ju göra rundade hörn med CSS, hör jag er säga. Och, ja, det är klart man kan - om man använder sig av ovannämnda "knep" för att lura webbläsaren att visa något på ett annat sätt. Och så måste man lägga till lite kod i exemplet ovan med.
I slutändan så har du kanske inte så himla lite markup-kod i sidan längre, och sen visar det sig att man har 48 rader CSS-kod som fungerar i webbläsare X och Y men inte Z... Men missförstå mig rätt nu. Jag har inget emot CSS alls, och använder det väldigt mycket. Jag anser dock inte att dte är moget att ersätta tabeller. Det är av just den anledningen jag tror framtiden är HTML5 och inte XHTML2.