Avatar billede axkris Nybegynder
20. januar 2004 - 21:04 Der er 14 kommentarer og
2 løsninger

Fylder en pixel lige meget i alle browsere?

Hej

Er det korrekt, at en pixel ikke fylder lige meget i alle browsere? Fordi på min hjemmeside har jeg en div (css) med bredden:

WIDTH: 125px;

Men i Mozilla er div'en noget bredere end i IE - omkring 5-10 pixels. Hvordan kan det være? Og findes der en "mere absolut" størrelse end pixels?
Avatar billede doggy82 Praktikant
20. januar 2004 - 21:13 #1
nej pixel er absolut.
Avatar billede bufferzone Praktikant
20. januar 2004 - 21:14 #2
Ja, størrelsen af pixlen afhænger af skærmens opløsning, ikke af browseren. Du kan dog indstille skriftstørrelse og andre ting i browseren og med hjælp til handikappede.

Hvis du ønsker at styrre ting mere i browseren brug da CSS
Avatar billede gil-galad Nybegynder
20. januar 2004 - 21:17 #3
jeg har ingen problemer med dette... Det virker i begge browsere.
<div style="background-color: green; width:125px;">....</div>
Avatar billede gil-galad Nybegynder
20. januar 2004 - 21:18 #4
men man skal lige huske at skrive noget i sin div.. bare et blanktegn eller noget ( &nbsp; ) ellers kan man ikke se den i Mozilla
Avatar billede dmcn Praktikant
20. januar 2004 - 22:05 #5
Problemet ligger i Mozillas måde at udregne bredder på i forhold til IE's.
IE siger: Et div på 300 px, med en border på 2 px og en padding på 5 px er 300 px bredt.
Mozilla siger: Et div på 300 px med en border på 2 px og en padding på 5 px er 314 px bredt.
Mozillas metode er naturligvis den rigtige. ;)
En mulig løsning:
Padding, border m.v. holdes i et div for sig, width holdes i et div for sig indeni div'et med border og padding. Inspiration kan f.eks. hentes på jubii.dk, hvor de benytter denne metode. :)
Avatar billede roenving Novice
21. januar 2004 - 05:58 #6
>>n0rmality ?-)

http://www.w3.org/TR/REC-CSS2/box.html

-- der står det ret klart, at padding er en del af 'containing block', mens border 'surrounds' denne box, så Mozilla skulle kalde dit eksempel 304px bred(hvilket også er min erfaring !-)
Avatar billede killifish Nybegynder
21. januar 2004 - 11:58 #7
Som andre allerede har sagt er det Mozilla der har den korrekte bredde. Hvis du sætter IE6 i standards-mode (med en strict doctype i toppen af dit dokument f.eks.) vil bredden blive den samme i IE og Mozilla.
Avatar billede axkris Nybegynder
21. januar 2004 - 12:01 #8
Hej alle
Mange tak for forklaring.

Hej killifish
Kan du ikke lige give mig et kodeeksempel?
Avatar billede killifish Nybegynder
21. januar 2004 - 12:21 #9
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="da">
<head>
<title>Test</title>
<style type="text/css">
p {
width:20ex;
padding:1em;
border:4px double red;
}
</style>
</head>
<body>
<p>Dette afsnit har samme bredde i alle browsere.</p>
</body>
</html>

Læs mere om doctypes på:
http://alistapart.com/articles/doctype/
Avatar billede axkris Nybegynder
23. januar 2004 - 14:23 #10
Jeg kunne ikke få det til at virke blot ved at indsætte:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="da">

Men hvad siger I andre, bør det virke? Kan man - som vist - tvinge browseren til følge standarden?
Avatar billede gil-galad Nybegynder
23. januar 2004 - 15:01 #11
du skal også have denne her i for at w3c vil validere den
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
Avatar billede gil-galad Nybegynder
23. januar 2004 - 19:11 #12
hvis da det er det du prøver på ;-)
Avatar billede roenving Novice
26. januar 2004 - 02:40 #13
Med <!DOCTYPE inklusive dtd-link skulle selv browsere med oprindelse i Seattle følge standarden !-)
Avatar billede axkris Nybegynder
30. januar 2004 - 14:08 #14
Mange, mange, mange tak for den kode, som tvinger browseren til at overholde standarden..... og her sad jeg og skrev koden på den en sådan måde, at den først fandt ud af, hvilke browser der var tale om, og derefter plussede nogle ekstra pixels til (alt efter browserens navn). Men det er nu historie :-D

Efter at have indsat koden, så er har teksten i Mozilla fået 1½ linieafstand, mens den i IE ser normal ud. Kan I finde mozilla-fejlen? (Så putter jeg lige lidt ekstra points oveni)

http://www.selvet.dk/test/
Avatar billede roenving Novice
30. januar 2004 - 14:45 #15
Umiddelbart er der en del fejl i nesting og placering af kode mv. (f.eks. din counter udenfor html-koden, og lige deromkring også en mangel på en </body>)

-- men om de betyder noget, kan jeg ikke gennemskue uden at gennemgå det med en tættekam, og det er svært med næsten 900 linjers proppet kode ...
Avatar billede axkris Nybegynder
30. januar 2004 - 15:50 #16
Mange tak :D
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