Opera sucks
Okay, jeg hader ikke rigtigt Opera (jeg går ikke så meget op i den dersens browserkrig), men læs lidt videre hvis du vil kende årsagen til den hadske overskrift.
Jeg er i gang med en ny version af Udvikleren.dk, som denne gang bliver udviklet med ASP.NET i stedet for PHP. Det har taget lang tid, da sitet efterhånden var blevet ret stort, men det har også været uhyre interessant. ASP.NET (version 2.0) er en rigtig spændende teknologi, og det har været sjovt at bruge den til at kode et større site med. Anyway, colde fra #udvikleren.dk spurgte om siden nu virkede i Opera. Det svarede jeg straks ja til, for den virkede jo perfekt i Firefox og Internet Explorer, så hvorfor ikke? Der tog jeg dog fejl, og derfor sucks Opera naturligvis (nej det er ikke et oplæg til debat! Og ja, både XHTML og CSS validerede, så stfu ASR
). Deres renderer laver altså de skøreste ting nogen gange, og jeg synes det er utroligt at der er så mange "omfg-IE-sucks-men-nu-skal-vi-hjælpe-dig-med-CSS-hax" sider, men tilsyneladende ikke rigtigt nogen til Opera. Derfor dette indlæg, der er placeret i Web kategorien af indlysende årsager, samt i .NET kategorien da et af disse tips er lidt ASP.NET specifikt.
Anyway, der var umiddelbart 3 problemer. For det første blev hele siden ligesom forrykket i forhold til de forskellige elementer, hvilket betød at alt var placeret lidt forkert. Dette har jeg flere gange oplevet med Opera (jeg bruger den dog naturligvis så godt som aldrig), så nu satte jeg mig for at det skulle løses. Jeg havde allerede givet mit body element en margin på 0, så det kunne vel ikke være det, vel? Jo, viste det sig. Opera vil nemlig ikke blot have en margin på 0, padding skal også være 0, for at indholdet må gå helt ud til alle sider. Det var jo let at fixe, ik?
Det hjalp, men var ikke helt nok. Visse elementer var stadig lidt skævt placeret. Det var egentlig ikke noget specielt, men når jeg nu var i gang... Efter lang tids forsøgen og mange gætterier, kom jeg til at tænke på mit <form> element. Lige præcis med ASP.NET er dette element jo ret specielt, da der skal være en <form runat="server"> rundt om ens andre servertags. Derfor er det som regel lettest at placere den som noget af det første inden for <body> tagget, så er man sikker på at have e det hele med (der må kun være en <form runat="server"> pr. side). Jeg forsøgte derfor at give den en padding og margin på 0 også, og det hjalp sørme. Nu var elementerne igen placeret korrekt på siden i Opera - hurra!
Det sidste problem har jeg stadig ikke fået fixet, da det umiddelbart er så absurd at jeg ikke aner hvad jeg skal gøre ved det. Heldigvis er det et mindre problem, en lille design glitch kunne man nærmest sige. Forhåbentligt kan mine simple tips hjælpe andre der kæmper med denne djævelske, norske browser.


