Jørgen Farum Jensen <jfjenzen@yahoo.dk> writes:
> Jeg har kigget lidt på denne sag og skrevet en lille
> artikel om det:
>
>
http://www.webdesign101.dk/x/ie7/starhack.html
Jeg læste:
---
Tricket ligger i universalselektoren, der i klart sprog kan beskrives
som "udvælg alle elementer i et element div#boks, der er barn af
html-elementet".
---
"* html div#boks" læse som:
alle "div"-elementer med id="boks" der er efterkommere (ikke nødvendigvis
direkte børn) af et "html"-element, der er efterkommer af et andet element.
Problemet er at det ene valide "html"-element et html-dokument kan
have ikke kan være efterkommer af noget andet element. Altså, "* html"
matcher ingen elementer, og derfor slet ikke "* html div#boks".
IE's fejl er så at lade "* html" matche html-elementet alligevel.
---
Lovligt, men ukorrekt.
---
Helt præcist må det være "Gyldig, men ukorrekt implementeret af IE".
Der er ingen lov imod ugyldig CSS (heldigvis :)
---
Med undtagelse af body-elementet er alle andre html-elementer
nødvendigvis i det mindste børnebørn af html-elementet.
---
Du glemmer "head".
---
Det er jo lidt uheldigt for os, der har brugt netop dette hack til at
passere formregler til IE, der skulle få denne browser til at
fortolke vore stylesheets på samme måde som mere standardkompatible
browsere. (Men vi ligger vel som vi har redt...)
---
Det gør I nemlig :)
Hvis man udnytter en fejl i en implementation af en standard til
noget som helst, så 1) har man ikke specifikation for hvad der
egentlig sker, og 2) ingen garanti for hvornår det bliver rettet.
Hvis man bruger en CSS-fejl til at opveje en anden (hvilket typisk
er grunden til at man laver et CSS-hack), så hænger man på den
hvis kun en af fejlene bliver rettet.
Jeg er helt enig i at anbefale conditional comments til at tilføje
ekstra IE-specifikke koder (det er det jeg selv gør). At løbe an på
fejl er ... skrøbeligt.
> Men jeg har en nagende fornemmelse af, at der
> må være en snildere metode. Nogen forslag?
Til at tilføje noget til en web-side der kun bruges af IE?
Kan det være snildere?!?
Andre er også enige: <URL:
http://www.quirksmode.org/css/condcom.html>
(selvom jeg er uenig i at det er et "CSS hack").
/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.'