Avatar billede 4u2x Nybegynder
03. september 2006 - 11:35 Der er 20 kommentarer

hent bestemte CSS koder til FF og IE

Jeg ku godt tænke mig at justere højden på en <table> alt efter om det er en IE eller FF browser.

Nogen der ved om det er muligt?
Avatar billede nythjem Nybegynder
03. september 2006 - 14:30 #1
Hejsa..

Det er bestemt muligt, du laver bare et hack.

.TableHeight {height:200px;}
html>body .TableHeight {height:220px;} /* Til Mozilla */
Avatar billede pidgeot Nybegynder
03. september 2006 - 14:37 #2
...nu hjælper det så ikke det store ved IE7, da mange hacks ikke længere virker i den. Det er selvfølgelig muligt det der skal laves ikke er NØDVENDIGT der, men man ved jo aldrig.

Det er bedre at du laver et ekstra stylesheet med de IE-specifikke CSS-regler og inkluderer det efter det normale via en conditional comment:

<!--[if lte IE 6]><link rel="StyleSheet" type="text/css" href="IE.css"><![endif]-->

vil inkludere et ekstra stylesheet ved navn IE.css såfremt browseren er IE6 eller derunder. Hvis det gælder ALLE IE udgaver, skal der stå <!--[if IE]> i stedet for <!--[if lte IE 6]>.
Avatar billede nythjem Nybegynder
03. september 2006 - 14:49 #3
Pidgeot, fortolker IE7 html>body hacket ?
Avatar billede pidgeot Nybegynder
03. september 2006 - 15:05 #4
Jeg har ikke sat mig så meget ind i de hacks, fordi jeg har ikke brug for dem. Det er stort set kun IE der skal have specielle oplysninger, og det er det conditional comments bør bruges til (desværre er der ingen andre browsere der har fundet det en god ide at implementere denne feature, det kunne nemlig have været rart).

Jeg ved Holly hack'et ikke længere kan bruges, men jeg ved også det ikke er det du bruger der.
Avatar billede pidgeot Nybegynder
03. september 2006 - 15:14 #5
...det er selvfølgelig også værd at bemærke at du skal have en DOCTYPE, da IE ellers går i quirks mode. Det skal være det ALLERFØRSTE i dokumentet - godt nok tillader IE7 en XML-prolog til XHTML, men det gør IE6 ikke.

Det er ikke unormalt at se sider der kun virker ordentligt i IE hvis der er en DOCTYPE på - og i en del tilfælde kan det ligefrem ende med det slet ikke er nødvendigt at specificere andre styles for IE.
Avatar billede nythjem Nybegynder
03. september 2006 - 15:24 #6
Jeg har desværre ikke rigtig fået lejlighed til at teste på IE7 endnu, får det først når jeg får det som en del af mit testmiljø på arbejdet..

Personligt synes jeg IE specifikationer (<!--[if lte IE 6]>) er grimme og unødvendige. Synes hacks som html>body er meget bedre, udelukkende pga. deres manglende synlighed i selve koden men altså kun i selve stylesheetet.

Der hvor jeg arbejder er det meget vigtigt med detaljerne iht. de forskellige browsere og så er det jo rigtig rart med hacks, der er jo desværre forskel på fortolkningen i eksempelvis margin-bottom, height, padding og højre margin omkring flydende divs.. :)
Avatar billede pidgeot Nybegynder
03. september 2006 - 15:47 #7
Men i og med at du bruger de hacks, vælger du også at acceptere at du måske skal lave en masse om hvis et hack pludselig ikke virker mere, og fejlen/uoverensstemmelsen ikke er rettet - ligesom du også risikerer at påvirke andre browsere som tilfældigvis læser det ligesom IE, selvom de viser det rigtigt med det du bruger til Mozilla.

Det eneste der taler imod conditional comments er at det kun er IE der har kunnet tænke langt nok til at implementere det. Ideelt set vil jeg mene det burde være noget alle browsere understøttede (naturligvis med deres egne navne til if-sætningen!) - på den måde har du en fejlsikker metode til at arbejde udenom forskellige fortolkninger, fordi du bestemmer præcist hvad der skal gives til den enkelte version af den enkelte browser. Der er hacks ubrugelige, fordi de kun fungerer i visse tilfælde - og du er da først på den hvis du skal ændre noget indenfor de enkelte versioner (eksempelvis hvis IE 5.5 skal have noget andet end IE 6).
Avatar billede nythjem Nybegynder
03. september 2006 - 15:54 #8
Ja det er rigtigt.. Men med if metoden skal du alligevel gøre det samme når der kommer servicepacks eller nyere versioner, så det kan jo gå ud på et :)
Avatar billede pidgeot Nybegynder
03. september 2006 - 16:03 #9
Servicepacks laver mig bekendt ALDRIG om på renderingen, eller læsningen af diverse hacks. Det er kun ved helt nye versioner - og der skal du jo alligevel lave det samme om.

Det er dog langt mindre du så skal ændre: Du skal blot kontrollere om det nu renderes rigtigt UDEN den conditional bliver anvendt. Gør den det, skal din conditional comment ganske enkelt ikke bruges, og hvis den renderes som i den gamle udgave, er det jo bare at ændre den conditional så den BLIVER brugt for den nye version.

Hvis det så viser sig det kun er en del af den der kan fjernes, er det jo bare at flytte resten over i et nyt stylesheet og sige at det skal bruges for alle versioner til og med den nye, mens det gamle bliver lavet om til at indeholde det som skal bruges i den gamle udgave, men som ikke skal bruges i den nye. Det er sådan Wikipedia gør; de har en conditional til IE 5.0, en til 5.5, en til 6, en til 7, og så en der gælder for alle IE-versioner.
Avatar billede mclemens Nybegynder
03. september 2006 - 21:13 #10
Avatar billede mclemens Nybegynder
03. september 2006 - 21:49 #11
Eller rettere > virker i IE 7 ... så dermed virker css hacket med > ikke længere ...
Avatar billede nythjem Nybegynder
03. september 2006 - 22:09 #12
Tak for linket.. :)

Det gør nu heller ikke så meget om det virker i IE7. Det virker jo stadig i den browser den er ment til :)

Men på baggrund af at Microsoft er begyndt at følgende standarderne var det måske på tide at bruge conditional comments.. Men måske er det jo slet ikke nødvendigt fra nu af.. :)
Avatar billede mclemens Nybegynder
03. september 2006 - 23:28 #13
Velbekom ;)

[ ... var det måske på tide at bruge conditional comments.. Men måske er det jo slet ikke nødvendigt fra nu af.. :) ] Uhm, hvis dit site baserer sig på en bug som eksisterer i IE < 7 bør du nok bruge en IE-C.Comment der rammer under IE 7 ... det er jo ikke alle der er lige flittige til at opgradere (men det er ikke til at vide 100% hvordan IE 7 final reagerer på ens side :P ) - men, det er rart at Microsoft opper sig lidt :)

... Jeg har ligesom Pidgeot heller ikke sat mig meget ind i css hacks, da jeg ikke selv bruger dem - og ikke har behovet for dem (har dog rodet lidt med > i height 100% spørgsmål herinde indtil jeg så de IE-C.Comments ...)
Avatar billede nythjem Nybegynder
04. september 2006 - 00:20 #14
:) Hehe..

Jeg har nogle meget dygtige men også krævende designere (og kunder), så jeg må bruge alle kneb for at få det til at se rigtigt ud i alle standard browsere..

Anyways, det bliver jo lidt spændede når Microsoft releaser. IE7 kommer jo som en kritisk update via Windows update, så alle der ikke har slået den fra downloader den snart (release medio september).
Avatar billede olebole Juniormester
04. september 2006 - 14:53 #15
<ole>

"Men på baggrund af at Microsoft er begyndt at følge standarderne" ... tjaaahhh, i så fald bliver IE sør'me ensom!
Når alt kommer til alt, er IE6 såmænd ikke væsentligt værre end FF. Deres elendigheder ligger blot på forskellige områder ... men de er nogenlunde lige dårlige  ;o)

/mvh
</bole>
Avatar billede nythjem Nybegynder
04. september 2006 - 15:00 #16
Det er også min holdning Ole. Men det skyldes jo mere eller mindre en oppet holdning hos Microsoft.

Jeg husker tydelig IE5 (det værste marridt), dernæst en påbegyndt opfølgning og rettelser hen i mod w3c. Så du har ret, det er på rette vej.

Og godt det ikke er mig der skulle programmere en browser. Er du sindsyg der er meget sjusk at skulle tage hensyn til *Gg* Længe leve xml.. :)
Avatar billede olebole Juniormester
04. september 2006 - 15:35 #17
Det er formodentligt blevet for dyrt/omstændigt at vedligeholde en så tilgivende browser som IE. Det tyder i hvertfald på, vi får en helt renoveret version ... måske ikke helt i 7.0 - men så i 8.0. Hellere vente lidt og så få noget ordentligt  ;o)

Til gengæld er det gået omvendt med Mozilla. De sidste NS'er og op til Mozilla 1.5, var Netscape/Mozilla overordentligt gode og standard-overholdende.
Fra og med Firefox har man dog sat en masse af dette forspring over styr. FF er desværre komplet fucked-up i forhold til dens forgængere ... og det er jo ikke lige den vej, det burde gå  :o|
Avatar billede nythjem Nybegynder
04. september 2006 - 16:03 #18
Det beviser jo bare en ting:

Vil man have folk til at gå i cirkus skal der være plads til at kunne se alle dyr.. ;-)

Det bliver jo faktisk spændende at se om folk kommer til at fravælge IE, den kommer jo sikkert til at rendere indholdet lidt anderledes end tidligere.. :)
Avatar billede mclemens Nybegynder
06. september 2006 - 23:36 #19
Se [ Using Conditional Comments ] Næsten helt i bunden herinde (andre css hacks til at ramme IE med ophører snart da IE snart understøtter mere css):
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/IETechCol/cols/dnexpie/ie7_css_compat.asp
Avatar billede mclemens Nybegynder
06. september 2006 - 23:37 #20
Arg, forkert tråd ... undskyld (jeg var inde for at
finde linket til en anden tråd, men glemte at skifte tab :P )
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