Hur löser DU padding-problemet i CSS mellan Mozilla & IE
Borde nästan finnas nåt klistrat om det här tycker jag, för om detta problem är så stort som jag börjar misstänka så borde ju folk snacka sånt här hela dagarna här inne
Jag skulle iallafall vilja veta vilken metod som är mest vanlig, eller mest "korrekt".
Problemet är alltså att Internet Explorer tolkar CSS på sitt eget sätt, så en div-box gjord i CSS med width:100px och padding:10px blir i Mozilla (och alla andra korrekta browsers) 100 + 10 + 10 bred, paddingen läggs utanpå.
I IE läggs paddingen inuti och den boxen blir alltså 100px bred.
Detta verkar kunna lösas på några olika sätt.
1. Fula kod-hack, där man enkelt förklarat lägger in flera definitioner på sin bredd av boxen i fråga, men på de olika raderna lägger man in olika typer av "fel" som vissa av läsarna klarar att tolka och andra hoppar över dom.
2. Köra strict xthml i sin kod, genom att lägga till denna rad överst i html-filerna.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
Då tolkar iallafall IE6 koden rätt, men gamla IE5.5 klarar fortfarande inte.
3. Stänga in alla sina boxar i yttre boxar som inte har vare sig padding eller margin eller några egenskaper alls förutom den exakta bredd man önskar. Sedan väljer man bredd 100% på boxarna inuti och overflow: hidden.
Metod 1 känns rätt osäker och desperat tycker jag.
Metod 2 gör att man måste lära sig html en gång till för den ändrar tolkningen så att alla jävla html-kommandon måste skrivas annorlunda annars blir det fel (även om den verkar fatta vanlig kod men testar man i validerare så klagar den som en tok på allt).
Metod 3 funkar väl bra antar jag, men jobbigt om man vill ha text som ska fylla ut boxen på bredden, för då lär ju den klippas av och hamna utanför i Mozilla medans den är precis lagom paddad i explorer antar jag. Vet ej om det går att lösa på bättre sätt än width: 100% vilket ju ger overflow
Verkar som width inte räknar med paddingen i rätta CSS-tolkningen.
Kanske går att köra padding 0 åt höger och vänster eller nåt för att lösa det jag vet inte, men det är ju inte så praktiskt eller kul.
Jaja, jag är nybörjare och allt detta är kanske helt galet....detta är bara så som jag ser problemet just nu. Är det för mycket fel så får jag väl deleta tråden eller nåt om nån klagar
CCNA sedan juni 2006