Avatar billede steen_hansen Forsker
22. oktober 2006 - 14:20 Der er 22 kommentarer og
1 løsning

Generelle betragninger ved. MSIE og images

Jeg har taget en <div> og lagt et billede ind i det. Jeg støder på det samme problem hver gang.

<div style="width: 850; height: 40px;">
    <img src="/images/banner/navbar.gif" style="width: 850px; height: 40px; border: 0px;" alt="">
</div>

I Opera, NS og FF vises det fint nok, men i MSIE kommer der 2px luft nedenunder billedet. Hvad har indflydelse på hvordan det vises i MSIE? Jeg har prøvet med padding: 0px; i DIV'en, men det hjalp (selvfølgelig) ikke.
Avatar billede steen_hansen Forsker
22. oktober 2006 - 14:22 #1
PS: Jeg havde et andet sted på siden, hvor det samme problem opstod. Her lagde jeg det dog ind som baggrundsbillede:

background-image: url('/images/billede.jpg');
background-repeat: no-repeat;

- og så passer det også i MSIE. Men det virker som om, at DIV's forskubbes i MSIE. Kan det passe?
Avatar billede keysersoze Ekspert
22. oktober 2006 - 14:24 #2
der findes sikkert smartere måder og derfor lægger jeg ikke et svar - men umiddelbart kender jeg to muligheder;

1. lad start-div, img og slut-div ligge på samme kode-linie i stedet for på tre linier. IE læser vistnok det at der er en ny linie som et slags mellemrum og derfor mellemrummet.

2. læg en lille font ind (font-size : 1px;) som så minimerer/fjerner mellemrummet.

Som sagt findes der sikkert en bedre og mere logisk forklaring - men det var i hvert fald mine tanker :)
Avatar billede steen_hansen Forsker
22. oktober 2006 - 14:30 #3
Nr. 1 gjorde ingen forskel. Hvor mener du den lille font skal lægges ind henne?

<div class="banner">
    <map name="imagemap" id="imagemap">
        <img src="/images/.../xxxxxx.gif" usemap="#imagemap" style="border: 0px; width: 850; height: 40px;" alt="">
        <area href="/members/" onfocus="this.blur();" shape="rect" coords="0,5,220,40" alt="Til forsiden">
    </map>
</div>
Avatar billede udvikler Nybegynder
22. oktober 2006 - 14:32 #4
Tror han mener:

<div class="banner" style="font-size: 1px;">
    <map name="imagemap" id="imagemap">
        <img src="/images/.../xxxxxx.gif" usemap="#imagemap" style="border: 0px; width: 850; height: 40px;" alt="">
        <area href="/members/" onfocus="this.blur();" shape="rect" coords="0,5,220,40" alt="Til forsiden">
    </map>
</div>
Avatar billede steen_hansen Forsker
22. oktober 2006 - 14:35 #5
-aco-/keysersoze, det hjalp sq! Hvad er der galt med MSIE, siden man skal lave cowboy-tricks for at få det til at makke ret?

Smid et svar begge to :o)
Avatar billede udvikler Nybegynder
22. oktober 2006 - 14:37 #6
Jeg siger nej tak til point, jeg understregede bare hvad keysersoze skrev :)
Avatar billede steen_hansen Forsker
22. oktober 2006 - 14:39 #7
Ok, men så tak for at påpege det :o)

Hvad gør det, at man sætter font-size: 1px; ind? Umiddelbart kan jeg ikke se, at det har noget med noget at gøre.

keysersoze, smid lige et svar :o)
Avatar billede udvikler Nybegynder
22. oktober 2006 - 14:42 #8
Fordi at mellemrummet jo også er "skrevet" i en font størrelse.

Så når du indsætter font-size: 1px; så gør du bare fonten mindre og dermed mellemrummet mindre.
Avatar billede steen_hansen Forsker
22. oktober 2006 - 14:47 #9
Ok. Jeg er ked af at sige jeg ikke forstår det, for der er jo ikke hverken &nbsp; eller " " - håber du kan forklar det lidt nærmere :o)
Avatar billede udvikler Nybegynder
22. oktober 2006 - 14:58 #10
Jeg kan prøve...

Når du har lavet et dokument, bliver der automatisk defineret en font-size (tror den bliver sat til 12px). Så medmindre du ændre font størrelsen vil den være på 12px.

Dvs at det mellemrum som blev skabt fylder 12 px.

Når du så ændre font størrelsen så bliver mellemrummet mindre og dermed bliver det mindre synligt.

keysersoze's løsning fjerner ikke mellemrummet helt, men gør det bare så småt at du ikke kan se det.
Avatar billede steen_hansen Forsker
22. oktober 2006 - 15:04 #11
Ok, jeg er klar over, at medmindre andet er angivet, så vil standarderne være Times New Roman 12px(vistnok 12px); Jeg troede bare ikke det ville få indflydelse, hvis ikke man angav et " " eller &nbsp; :o)

I har begge fortjent at blive forgyldt med 15 bobs hver. Smid et svar, begge to :o)

Jeg skal snart i byen, så når I ikke at besvare inden jeg går, gør jeg det i aften :o)
Avatar billede steen_hansen Forsker
22. oktober 2006 - 15:06 #12
gør = accepterer - I ved hvad jeg mener :o)
Avatar billede udvikler Nybegynder
22. oktober 2006 - 15:07 #13
Jeg siger stadig nej tak, hvis keysersoze ikke ligger et svar, jamen så tag dem selv :-)
Avatar billede steen_hansen Forsker
22. oktober 2006 - 15:08 #14
Så skal du have 1000 tak for din forklaring, takker mange gange :o)
Avatar billede udvikler Nybegynder
22. oktober 2006 - 15:09 #15
Det var så lidt.
Avatar billede keysersoze Ekspert
22. oktober 2006 - 17:02 #16
har lige været ude et par timer og har derfor ikke fulgt med - lykkedes det hele eller hvordan og hvorledes?
Avatar billede steen_hansen Forsker
22. oktober 2006 - 17:48 #17
Jeg har også lige været i byen :o)

Jo tak, det hjalp med font-size : 1px;, det gjorde, at mellemrummet på de 2 px forsvandt. Smider du lige et svar? :o)
Avatar billede roenving Novice
23. oktober 2006 - 00:32 #18
-- hvordan kan et billede blive et barn af et area-element ?-)

-- virker det ikke også, hvis du:

<div class="banner">
    <map name="imagemap" id="imagemap">
        <area href="/members/" onfocus="this.blur();" shape="rect" coords="0,5,220,40" alt="Til forsiden">
    </map>
    <img src="/images/.../xxxxxx.gif" usemap="#imagemap" style="border: 0px; width: 850px; height: 40px;" alt=""></div>

-- og PS: Husk _altid_ enheds-angivelsen til længder (højde/bredde) i css !-)
Avatar billede steen_hansen Forsker
23. oktober 2006 - 00:45 #19
Hej roenving

Du mener altså bare, at img skal flyttes ned under </map>?

Og dit PS: Du mener enhedsangivelserne til billedet?

<img src="/images/.../xxxxxx.gif" usemap="#imagemap" style="border: 0px; width: 850px; height: 40px;" alt=""></div>

er lig med

.imgsize {
height: 40px;
width: 850px;
border: 0px;
}

<img src="/images/.../xxxxxx.gif" usemap="#imagemap" class="imgsize" alt=""></div>
Avatar billede roenving Novice
23. oktober 2006 - 00:56 #20
-- jeg har ikke lige testet det, men faktisk _må_ et img-element ikke være barn af et map-element, da den slags kun må indeholde area-elementer !-)

-- og ja, der findes en eneste undtagelse, nemlig hvis længden er 0 (nul), for den er jo den samme uanset enhed !o]
Avatar billede steen_hansen Forsker
23. oktober 2006 - 06:36 #21
Ok, jeg havde pastet det ind på en forkert linie herinde, men den stod over <map></map> før. Den er nu rykket nedenunder, class="imgsize" er sat på billedet. Jeg prøvet ar REM'e dette ud:

.banner {
width: 880px;
height: 40px;
*/ font-size: 1px;*/
border-bottom: 1px solid #000;
}

- Så kommer der øjeblikkeligt de 2px i bunden i MSIE ....?
Avatar billede keysersoze Ekspert
25. oktober 2006 - 16:43 #22
svar - hvis det var til mig :)
Avatar billede steen_hansen Forsker
25. oktober 2006 - 19:56 #23
Jamen, det var det da - tak for hjælpen :o)
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