Avatar billede idiotbarn Nybegynder
16. november 2004 - 22:44 Der er 7 kommentarer og
1 løsning

Ændre align på billede

Jeg har et billede der er i venstre side, ved en mouse over skal den skifte til højre side...Jeg har prøvet med
document.getElementById('Bund2Billede').style.align = 'right';
document.getElementById('Bund2Billede').style.Align = 'right';
document.getElementById('Bund2Billede').style.textAlign = 'right';

men ingen af dem har virket...gode ideer?
Avatar billede skovenborg Nybegynder
17. november 2004 - 00:42 #1
i dette tilfælde er den korrekte style-property du skal have fat i text-align (eller textAlign i javascript-sammenhæng). De to andre du har prøvet er udelukkende html-attributer (ligesom fx src er det for et billede).

Problemmet er bare at text-align på billeder ikke gør det du her forventer. Det den egentlig gør er at sætte tekstjusteringen for det, som er indeni elementet. Men da billeder jo ikke indeholder noget som helst er der heller ikke særlig meget at bruge text-align til og derfor bevirker den heller ikke til noget særligt her.

Istedet skal du smide dit billede ind i en omkransende div:
<div id="billedDiv">
<img src="logo.png" />
</div>
Denne div kan du så sætte text-align på. Nu vil text-align på div-boksen nemlig medvirke til at indholdet _indeni_ div-boksen bliver justeret og da billedet lige netop er indeni div-boksen, ja så bliver den også justeret alt efter hvad du har sat text-align til.

Hvis du vil bruge javascript til at lave en onmouseover funktion, så kan du gøre det på denne måde:
<script type="text/javascript">
  function alignBillede(containerId,alignment) {
        document.getElementById(containerId).style.textAlign = alignment;
  }
</script>

og
<div onmouseover="alignBillede('billedDiv','right');" onmouseout="alignBillede('billedDiv','left');">
MouseOver her
</div>
Avatar billede skovenborg Nybegynder
17. november 2004 - 00:44 #2
Det kan godt være det lyder lidt forvirrende med alt den snak om div-bokse og den slags. Men det er bare vigtigt at vide at text-align ikke påvirker elementet selv, men tingene som er indeni.

Det skal måske lige bemærkes at text-align kun påvirker inline-elementer som fx tekst og billeder. Block-elementer som andre div-bokse og headere (<h1>,<h2> osv) bliver derimod ikke påvirket, medmindre du laver dem om til inline-elementer. Men nok om det ;-)
Avatar billede olebole Juniormester
17. november 2004 - 10:24 #3
<ole>

... og for at gøre forvirringen komplet, så virker 'verticalAlign' på elementet ... ikke det, der er indeni. Eneste undtagelse for dette er tabel-celler  :)

/mvh
</bole>
Avatar billede idiotbarn Nybegynder
17. november 2004 - 19:50 #4
hmm. 1000 tak for beskrivelserne, giver noget mere indblik i hvad der sker. Men skulle verticalAlign virke på et billede (ikke hos mig;) )
Hvis jeg smidder et div omkring løfter billedet sig lidt. Den er alignet i bunden af en celle og skulle helst blive på bunden
Avatar billede olebole Juniormester
17. november 2004 - 20:12 #5
Det, jeg mener, er:

<div><img src="myPic.jpg" style="vertical-align:middle"> blabla</div>
<div style="vertical-align:middle"><img src="myPic.jpg"> blabla</div>
<div style="height:50px;vertical-align:middle;border:1px solid red">blabla</div>

<table cellspacing="0" cellpadding="0" border="0">
<tr>
    <td><img src="myPic.jpg" style="vertical-align:middle"> blabla</td>
</tr>
<tr>
    <td style="vertical-align:middle"><img src="myPic.jpg"> blabla</td>
</tr>
<tr>
    <td style="height:50px;vertical-align:middle;border:1px solid red">blabla</td>
</tr>
</table>

... det er zq nemmere at vise  :)
Avatar billede roenving Novice
24. december 2004 - 23:29 #6
Vel på tide at gøre noget, f.eks. lukke ?-)
Avatar billede idiotbarn Nybegynder
27. december 2004 - 15:11 #7
Jo...min fejl, ligger i lige et svar?
Avatar billede olebole Juniormester
29. december 2004 - 08:30 #8
yups  :)
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