20. februar 2003 - 08:03Der er
22 kommentarer og 1 løsning
Hvid streg i IE, ikke i andre browsere
Jeg har et problem med nogle celler i et <table>, som ikke vil lægge sig 100% tæt - i hvertfald ikke i IE 6, som viser en hvis streg mellem billedet og nederste boks.
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
En </td> skal _altid_ op og stå i slutningen af celle-indholdet. Det er et velkendt fænomen, som ikke er rent IE. Det afhænger i andre browsere bl.a. af DTD'en, der anvendes :)
Key: Point til dig. Men til både Olebole og dig vil jeg gerne spørge, om det er en 'bug' eller om det er "med vilje" at IE (og visse andre browsere) reagerer, som den gør?
Jamen, det er helt almindeligt i HTML, at man _aldrig_ slutter med et white-space tegn i et element.
Dette er forket: <b>her står noget fed tekst </b>og her står noget almindelig tekst Dette er korrekt: <b>her står noget fed tekst</b> og her står noget almindelig tekst
Sådan er sproget nu engang konstrueret - og det står da også et eller flere steder i HTML-rekommendationerne fra W3C. Det er derfra, jeg har det - og erfaringen viser, at de fleste browsere overholder dette :) /mvh
Olebole: Jamen ok! Det var også det jeg fiskede efter :) Jeg må indrømme jeg aldrig har læst eller hørt om det før, og kan heller ikke umiddelbart se fordelen i det, da tabulator-tegnet, som var "synderen" i dette tilfælde blev brugt til formattering af koden for overskuelighedens skyld. Men nu ved jeg det til en anden gang :)
Nej, tabulator-tegnet var ikke synderen ... det var den nye linie. New-line tegnet er også et white-space tegn - selvom det ikke er umiddelbart synligt i din editor. Man slutter _altid_ en container af en hvilken somhelst art på samme linie som dens indhold - uden white-space mellem indhold og container-slut-tag. Skal der endelig være et mellemrum, bruges :
... indholdet af cellen slutter her </td>
Dette er i øvrigt også forkert: almindelig tekst<b> og fed tekst</b> Det skal være: almindelig tekst <b>og fed tekst</b> Ellers er resultatet uforudsigeligt.
<img src="pic1.gif"><img src="pic2.gif"> Giver i øvrigt heller ikke samme resultat, som: <img src="pic1.gif"> <img src="pic2.gif">
Det gør tilgengæld: <img src="pic1.gif"><img src="pic2.gif">
Problemet er jo, at jeg synes det er mest overskueligt at bruge f.eks. <table> <tr> <td> Se min html-kode<br> Er den ikke bare smuk?! </td> </tr> </table>
end
<table> <tr> <td> Se min fine html-kode<br> Er den ikke bare flot?</td></tr></table>
Altså: Alle tags, der indholder tekst og/eller grafik skal strippes for white-space, der ikke hører til i indholdet. Evt. white-space, der ligger i begyndelsen eller slutningen af indholdet, skal lægges udenfor tag'et ... alternativt erstattes af none-breaking spaces. /mvh
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.