Avatar billede supermand69 Nybegynder
04. august 2004 - 15:40 Der er 15 kommentarer og
1 løsning

skjul/vis div

Jeg har to <div> som står ved siden af hinanden, som _kunne_ se således ud (eller hvad nu der er den bedste løsning):

<table width="900">
<tr>
<td><div name="1"></div></td>
</tr>
<tr>
<td><div name="2" width="300"></div></td>
</tr>
</table>

div nr 2 skal så kunne skjules ved at man trykker på en knap og div nr 1 kommer til at fylde hele bredden i min <table>

hvordan kan det lade sig gøre?
Avatar billede roenving Novice
04. august 2004 - 15:49 #1
Ved siden af hinanden ?-)

Hvis du gør sådan, vil det virke på den måde:

<table width="900">
  <tr>
    <td>
      <div id="mindiv2" style="width:600px;float:right;">Dette er en tekst, som fylder op fra starten, men kan skjules, så den anden kan komme til at brede sig ud over det hele, men ikke gør det fra starten</div>
      <div id="mindiv1" style="float:left;background:#aaa;">Dette er en tekst, som kan komme til at brede sig ud over det hele, men ikke gør det fra starten</div>
    </td>
  </tr>
</table>
<button onclick="st=document.getElementById('minDiv2').style;st.display=(st.display!='none')?'none':'block'">Åbn/luk anden div</button>
Avatar billede roenving Novice
04. august 2004 - 15:54 #2
Bemærk iøvrigt, at float:right;-tingen skal stå foran i koden, så browseren kan vide, hvad der er til overs før den laver en, som fylder resten !-)
Avatar billede supermand69 Nybegynder
04. august 2004 - 17:49 #3
hvad nu hvis min table har en tilfældig bredde? hvordan kan jeg så gøre sådan at den div til højre går helt ud i siden??
Avatar billede supermand69 Nybegynder
04. august 2004 - 18:26 #4
se her:

<table width="100%">
  <tr>
    <td>
    <div id="div_left" style="float: left;"></div>
    <div id="div_right" style="float: right;"></div>
    </td>
  </tr>
</table>

hvis den højre er skjult skal den venstre fylde hele bredden, og når den højre vises skal den have en sat bredde og den venstre skal så fylde den resterende bredde ud :)
Avatar billede roenving Novice
04. august 2004 - 19:33 #5
Bortset fra at du har byttet om på højre- og venstre-diven, og netop ikke har sat en bredde på, er det jo præcis det, som jeg viser med eksemplet ...

Tabellen bredde betyder mindre, bare der er en rimelig plads til begge divs, når de vises, så vil den ikke have megen indflydelse !-)
Avatar billede supermand69 Nybegynder
04. august 2004 - 19:41 #6
jamen den div til venstre flyder ikke ud til den højre div
Avatar billede roenving Novice
04. august 2004 - 19:54 #7
Prøv i div1 (altså den sidste !-) at ændre brede til brei ...
Avatar billede supermand69 Nybegynder
04. august 2004 - 19:59 #8
nu er jeg helt sat af.. hehe
Avatar billede roenving Novice
04. august 2004 - 20:17 #9
<table width="900">
  <tr>
    <td>
      <div id="mindiv2" style="width:600px;float:right;">Dette er en tekst, som fylder op fra starten, men kan skjules, så den anden kan komme til at brede sig ud over det hele, men ikke gør det fra starten</div>
      <div id="mindiv1" style="float:left;background:#aaa;">Dette er en tekst, som kan komme til at brei sig ud over det hele, men ikke gør det fra starten</div>
    </td>
  </tr>
</table>
<button onclick="st=document.getElementById('minDiv2').style;st.display=(st.display!='none')?'none':'block'">Åbn/luk anden div</button>

-- jeg har ændret brede til brei i minDiv1 ...

Prøv så at vise den i browseren igen efter du ændrer videre til breii, breiii, breiiii osv. !-)
Avatar billede supermand69 Nybegynder
04. august 2004 - 20:28 #10
hvad skulle det hjælpe?
Avatar billede roenving Novice
04. august 2004 - 20:40 #11
Efterhånden flytter den helt hen til den anden !-)
Avatar billede roenving Novice
04. august 2004 - 22:08 #12
<table width="100%">
  <tr>
    <td>
      <div id="mindiv2" style="width:600px;float:right;background:#aaa;">Dette er en tekst, som fylder op fra starten, men kan skjules, så den anden kan komme til at brede sig ud over det hele, men ikke gør det fra starten</div>
      <div id="mindiv1" style="background:#ddd;">Dette er en tekst, som kan komme til at brei sig ud over det hele, men ikke gør det fra starten</div>
    </td>
  </tr>
</table>
<button onclick="st=document.getElementById('minDiv2').style;st.display=(st.display!='none')?'none':'block'">Åbn/luk anden div</button>
Avatar billede roenving Novice
04. august 2004 - 22:19 #13
Men bemærk, at den venstre div-boks _ikke_ stopper, men flyder rundt om !-)
Avatar billede supermand69 Nybegynder
18. august 2004 - 12:21 #14
lav et svar
Avatar billede roenving Novice
18. august 2004 - 12:27 #15
Velbekomme '-)
Avatar billede roenving Novice
18. august 2004 - 12:39 #16
-- og tak for point ;~}
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