Avatar billede tofferman Nybegynder
02. februar 2006 - 22:30 Der er 22 kommentarer og
1 løsning

Tips til håndtering af CSS i IE og Firefox

Hejsa.
Jeg roder voldsomt med css i øjeblikket, og er ved at blive sindssyg af den manglende overholdelse af standarder.

Mit største problem lige nu er størrelsen af bokse. Især omkring padding, hvor IE laver padding inde i boksen og Mozilla laver den udenpå.

Er der nogen der har nogle standard-patentløsninger på dette?

Jeg har følgende stående øverst på mine sider:

<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="da">
Avatar billede jokkejensen Novice
02. februar 2006 - 23:02 #1
http://www.google.dk/search?hl=da&q=css+box+model+hack&meta=

Der kan du læse lidt om nogle løsninger..

Mvh
Avatar billede roenving Novice
02. februar 2006 - 23:56 #2
Du skal zq bare sørge for at IE overholder standarderne ved at bruge en fuldt kvalificeret doctype inklusive dtd-link, f.eks.

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

-- så forstår selv den browser w3c-box-modellen !-)
Avatar billede stich Nybegynder
03. februar 2006 - 00:10 #3
Uanset hvilken doctype der bliver brugt, går IE i quirksmode når XML-deklarationen bliver serveret til den inden (og den bør så absolut ikke komme bagefter). Faktisk vil ethvert element, fx selv en kommentar, der kommer inden doctypen, også få IE til at gå i quirksmode. Til gengæld er DTD-linket ikke påkrævet, alt efter hvilken doctype man bruger, men du kan se en liste over hvilke af gængse der er 'farbare' på http://hsivonen.iki.fi/doctype/
Avatar billede roenving Novice
03. februar 2006 - 00:19 #4
Hvisse doctypes behøver ikke dtd-link, men man bør generelt bruge en fuldt kvalificeret ...

Læs forøvrigt mere her (under The Doctype switch !-): http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnie60/html/cssenhancements.asp
Avatar billede stich Nybegynder
03. februar 2006 - 03:50 #5
Hvorfor bør man generelt det? Det har jo vist sig at være nytteløst, da ingen af browserne alligevel bruger det til andet end renderings-mode-sniffing. Hovedsageligt af samme grund man har valgt at droppe den i Web Applications 1.0.
Avatar billede stich Nybegynder
03. februar 2006 - 04:07 #6
Og forresten er der da vist en fejl på den MS-side, for <!DOCTYPE html> får netop IE6 til at gå i CSS1Compat-mode.
Avatar billede olebole Juniormester
03. februar 2006 - 09:13 #7
<ole>

Det er generelt en god grund at bruge en fuld DTD - på samme måde, som det er en god grund, altid at bruge gåseøjne omkring HTML-attributter - selvom disse ikke altid er nødvendige.
Så behøver man ikke tænke på, om 'dette' nu er en af situationerne, hvor de er påkrævet. Selvom begrebet 'erfaring' virker voldsomt angstprovokerende på visse personer, vil jeg tillade mig at påpege, at erfaringen viser, der er mange Eksperten-brugere, der har gavn af den slags 'regler', der frigør dem for at huske en masse detaljer  :)

/mvh
</bole>
Avatar billede stich Nybegynder
03. februar 2006 - 23:03 #8
Jeg synes nu der er forskel, eftersom doctypen er processing-information, og citationstegn omkring attribut-værdier blot er en god vane - ligesom semikolon efter en CSS-værdi - eller påkrævet, hvor et valideringsforsøg i så fald vil afsløre manglen. Desuden er det vel de færreste der skriver doctypen hver gang (jeg kopierer den ihf. blot - som regel), og dem der gør bør ikke være i tvivl om hvilke der 'fungerer'.
På den anden side har jeg også fået opfattelsen af at du vil anbefale folk herinde at bruge HTML 4.01 Transitional på deres sider, uanset hvad, så det her er sikkert endnu en af de ting vi kun kan enes om at være uenige omkring.
Avatar billede olebole Juniormester
03. februar 2006 - 23:39 #9
Jaja, det kunne jeg sagtens forestille mig, du har opfattelsen af, men intet kunne naturligvis være mere ukorrekt - og de, der faktisk læser, hvad jeg skriver, ved da også det er noget fordrukkent sludder. Det kræver dog som sagt, man  evner at læse, hvad jeg skriver - og ikke giver efter for tåbelige fordomme om, hvad 'min slags' nok skriver.

Hvordan du danner dine opfattelser er en gåde af paramount dimensioner ... men på den anden side er det emne så guddommelig uinteressant, at der vist ikke er grund til at spilde tid på det  :)
Avatar billede stich Nybegynder
04. februar 2006 - 00:34 #10
Nej naturligvis ikke, det er jo blot den du bruger i dine eksempler hver gang. Det næste jeg skriver er vel, at jeg har fået opfattelsen af du mener XHTML1 er en sygdom for nettet...
Det er så fornøjeligt at diskutere med dig, aldrig et stødeligt eller hånende ord kan man finde i dine indlæg, jeg er dybt imponeret!
Avatar billede olebole Juniormester
04. februar 2006 - 00:40 #11
Nej, det er ikke den, jeg bruge hver gang, men ofte, Specielt, når folk i forvejen skriver HTML4.01-Trans ... så ville alt andet jo være totalt tåbeligt.

Ja, jeg har også seriøst på fornemmelsen, at hele meningen med din tilstedeværelse på E er at være på tværs og diskutere.
Ja, du har ret ... jeg håner dig ikke. Vi kan jo ikke begge spilde vores tid på at gøre dig til grin.
Avatar billede stich Nybegynder
04. februar 2006 - 01:28 #12
Ja det er selvfølgelig formålet for enhver herinde, hvis synspunkter divergerer fra dine. Hvor er det dog også uforskammet, at jeg ikke blot lytter til din erfaring og tilpasser mig, i stedet for at forholde mig til hvad folk udenfor Ekspertens lille univers mener...

Sov godt.
Avatar billede olebole Juniormester
04. februar 2006 - 01:31 #13
Ja, det er vist ved at være laaaaaaangt over din sengetid, Bulder  :D
Avatar billede jokkejensen Novice
04. februar 2006 - 10:10 #14
for satan da :)
Avatar billede roenving Novice
05. februar 2006 - 04:48 #15
>>stich

-- hvornår har du sidst set en, der (forsøgte ?-) at skrive xhtml, som også brugte scripts, der var xhtml-dom-klar ?-)

-- det er endnu ikke sket for mig ...
Avatar billede stich Nybegynder
05. februar 2006 - 20:40 #16
roenving:
JavaScript er ikke just min interesse, så jeg kigger sjældent på sådanne (DOM-scripting er dog noget jeg har tænkt mig at gøre mere i, så skulle du kende en god bog eller to om det, må du meget gerne nævne den/dem!). Men din pointe er vel problemerne med innerHTML? Tjaa, det er ikke noget jeg er særligt godt inde i, men på Mozillas Bugzilla har jeg dog læst, at det faktisk er noget de regner med at kunne fikse...
Avatar billede roenving Novice
07. februar 2006 - 13:16 #17
I et xml-miljø giver det jo ingen mening at indsætte noder ved at indsætte en tekst-streng, som hvis det var en del af xml-'koden' ndeholdt disse noder !-)

-- det giver fuld mening at appende noder eller på anden måde indsætte noder inde i andre noder på bestemte pladser, men f.eks. at indsætte et helt hierarki af disse er helt på tværs af tanken med xml ...
Avatar billede stich Nybegynder
07. februar 2006 - 15:28 #18
Jeg ser ikke hvorfor det skulle være helt på tværs af tanken med XML, og det er vel ikke noget der er nævnt noget om i specifikationen? Og strengen kan jo trods alt blive parsed automatisk, så det sikkert kommer til at fungere.

Men jeg synes da bestemt det er meget pænere udelukkende at bruge DOM-metoder, bl.a. pga. der trods alt er en standard for det. Jeg tror dog såmænd også det er noget der er ved at vinde frem, eftersom der er en hel del der taler om det på diverse konferencer, og jeg har ihf. set én "unobtrusive JavaScript"-bog for nyligt...
Avatar billede olebole Juniormester
07. februar 2006 - 15:41 #19
Propery'en innerHTML blev vel allerede med fremkomsten af W3C's HTML-DOM lidt en 'byld' på hele idéen om DOM og noder.

Historisk set er meget blevet til noget, fordi tilstrækkeligt mange har talt om noget eller gjort noget andet. Det er der kommet rigtig meget skidt ud af - så en generel indførelse af innerHTML i X(HT)ML er absolut ikke en umulighed.

Så vidt jeg har forstået FF's forløbige implementering, er der vist tale om noget, der er 'klasket oveni' FF's XHTML-DOM - som jo mere eller mindre blot er en klon af dens iforvejen buggy HTML-DOM
Avatar billede tofferman Nybegynder
08. april 2006 - 00:10 #20
Jeg har været ude og rejse, så jeg har været fraværende et øjeblik. Beklager.

Jeg fatter ikke en meter af hvad I siger. Til gengæld skændes I som gamle kællinger om hvorvidt flæskestegen først skal steges på sværen eller ej.

Jeg har brug for SVAR og ikke skænderier og henvisninger.

Hvad er der galt med mit (side)hoved??

<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="da">
Avatar billede stich Nybegynder
08. april 2006 - 00:28 #21
Interessant at du forventer at få hjælp når du kalder os for gamle kællinger...
Du har dog for længst fået et svar, du har så bare ikke forstået det (Google kunne dog fx hjælpe til at forklare begreberne), og undladt at læse ordentligt på den side jeg refererede til. IE går i quirksmode (hvilket gør at den renderer mange (flere) ting i CSS anderledes end specifikationen beskriver det) når du inkluderer har et element før doctypen, i dette tilfælde XML-deklarationen:
<?xml version="1.0" encoding="iso-8859-1"?>

Fjern den (den er ikke påkrævet alligevel), og IE vil opføre sig mere som man bør kunne forvente.
Avatar billede tofferman Nybegynder
08. april 2006 - 23:34 #22
Ok, jeg kan se at mine sider opfører sig anderledes i IE når jeg fjerner xml-deklarationen. Men den opfører sig stadig ikke som i Firefox.

Jeg kaldte jer ikke nogle gamle kællinger. Jeg skrev at I skændes som gamle kællinger, hvilket efterhånden er blevet meget normalt her på Eksperten, og det irriterer mig. Og øhh..det gider jeg ikke diskutere.
Avatar billede olebole Juniormester
19. april 2006 - 21:37 #23
Det er muligt, du bliver irriteret over, du får mere uddybende svar - men det er jo svært at sige, hvad du gør galt, når du ikke viser, hvad du skriver  :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester