"Stefan Kristensen" <sk@inospam.com> writes:
> Jeg er begyndt at rode lidt med CSS, og resultatet er da også meget
> anstændigt i IE.
> Men i NS ser det noget anderledes ud. IE er version 6.0 og NS er version
> 7.1.
Dette handler om CSS/HTML, og har som følge hjemme i
dk.edb.internet.webdesign.html. XFUT sat dertil (dvs at svar på dette
indlæg ender i den anden gruppe).
Jeg kan se at der er *stor* forskel (og Opera 7 har en tredje måde at
vise det på, som ligger tættere på IE)
> Kan I forklare mig om det er mig eller min(e) browser(e) der gør noget
> forkert?
Ja, det er, med altovervejende sandsynlighed, IE der er galt på den.
NS 7 (og generelt: Gecko-baserede browsere) har en næsten perfekt
implementation af CSS 2 (Opera 7 er ca. lige så god). Til
sammenligning har IE 6 en meget mangelfuld CSS 2-understøttelse.
Det er dog nok ikke det der er problemet, hvis du kun bruger de dele
af CSS 2 der er i IE 6.
> Siden findes på
www.jems.dk/bent og mit stylesheet på
>
www.jems.dk/bent/styles.css
Det første man skal sikre sig er at browserne viser siderne ifølge
standarderne. IE var den første til at indføre "bagudkompatibilitiet"
med IE 4's CSS-opførsel (som er helt hen i vejret i forhold til
moderne standarder). For at sikre sig at browseren er i "standards mode"
(modsat "compatability mode" eller "quirks mode"), så skal HTML-filen
starte med en lovlig DOCTYPE-erklæring der signalerer at det skal
være rigtigt. (Da en gyldig HTML-side alligevel skal starte med sådan
en, så er det ikke et stort problem).
De forskellige browserfabrikanter har skrevet om det (og er generelt
enige om hvilke DOCTYPE-erklæringer der signærer standards-mode):
<URL:
http://msdn.microsoft.com/library/en-us/dnie60/html/cssenhancements.asp>
<URL:
http://mozilla.org/docs/web-developer/quirks/doctypes.html>
<URL:
http://www.opera.com/docs/specs/doctype/>
Du har *ikke* en DOCTYPE-erklæring, så browserne går alle sammen i
quirks-mode. Det gør at du ikke kan stole på hvad CSS-standarden siger,
og slet ikke på hvad browserne gør. Ret det, og derefter kan du
så forsøge at få det til at se rigtigt ud.
Den næste man skal sikre sig, er at man har skrevet gyldigt HTML. Ellers
er der ingen garanti for at browserne kan blive enige om hvad man mener.
Man kan validere sin HTML på fx
<URL:
http://www.htmlhelp.com/tools/validator/>
Her kan jeg hurtigt se et par problemer. Du har fire elementer med
id="center". ID'er skal være unikke, så du burde bruge class="center"
i stedet.
Den første af diss indeholder tre andre div'er. Du bruger CSS-erklæringen
text-align:center. Den har ingen effekt på div'er, kun på inline-elementer
(jvf. standarden, IE lader den også virke på div'er).
Jeg kan også se at din regel for #image sætter width:150px. Da den
bruges på et span-element, som er et inline-element, har "width" (og
"height") ingen indflydelse (undtagen måske i IE, men det er en fejl).
Jeg kan se at reglen #navn2 sætter float:right, men ikke sætter en
"width". Det skal man. Jeg ville sige lidt mindre en 50%. Float er
farligt. Jeg vil anbefale at tilføje reglen:
hr {clear:both;}
for at være sikker på at <hr>'en kommer efter begge floats, lige meget
hvordan de skaber sig.
Til sidst skal man tage højde for at browsere er forskellig på nogle
punkter som ikke er fastsat af nogen standard. (Fx har IE en (ca) 8
pixels margin på dokumentet, mens Opera har en 8 pixles
*padding*). For det meste gør det ingen forskel, men det er nogen
gange godt at vide :)
Held og lykke
/L
--
Lasse Reichstein Nielsen - lrn@hotpop.com
DHTML Death Colors: <URL:
http://www.infimum.dk/HTML/rasterTriangleDOM.html>
'Faith without judgement merely degrades the spirit divine.'