[HTML] Schuifbalk in te klein venster.

Pagina: 1
Acties:

  • Onbekend
  • Registratie: Juni 2005
  • Laatst online: 23:26
Ik heb hier een stukje HTML-code. Voor het gemak heb ik het vereenvoudigd :)

HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<DIV>
  <TABLE>
    <TR>
      <TD>
        EenHeelLangWoord
      </TD>
    </TR>
  </TABLE>
  <TABLE>
    <TR>
      <TD>
        KleinWoordje
      </TD>
    </TR>
  </TABLE>
</DIV>

Met behulp van JavaScript kan ik de grootte en positie van de div (en dus van de tabel) aanpassen. Dit werkt goed.
Maar nu heb ik het probleem dat ik af en toe lange woorden in de tabel heb. Als ik de div te smal maak, wordt de onderste tabel smaller dan de bovenste. Dat wil ik niet, en wil graag dat er een schuifbalkje in de bovenste tabel komt.

Ik heb al met diverse HTML-tags wat geprobeerd zoals DIV, IFRAME en een tabel in een tabel.
Bij de IFRAME kreeg ik wel het gewenste resultaat, maar ik moest deze naar een nieuw HTML-document laten verwijzen. Ik wil graag dit in hetzelfde document houden.
Ik zoek dus iets waardoor ik de tekst in de tabel met een schuifbalk kan laten weergeven als daar te weinig ruimte voor is.
Heeft iemand een suggestie ?

Speel ook Balls Connect en Repeat


  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Gewoon HTML elementen gebruik waar ze voor bedoeld zijn :)

Mocht een een element het beste geschikt vinden (zou bij wijze van spreke een td kunnen zijn), dan kan je kijken naar de CSS property overflow

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


  • Onbekend
  • Registratie: Juni 2005
  • Laatst online: 23:26
Deze heb ik ook al geprobeerd. Dit werkt wel als ik de breedte vergroot. Maar de breedte verkleinen lukt niet meer vanwege die schuifbalken.

Speel ook Balls Connect en Repeat


  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 01-05 19:54

Bosmonster

*zucht*

Ook onbekend schreef op dinsdag 23 augustus 2005 @ 16:21:
Deze heb ik ook al geprobeerd. Dit werkt wel als ik de breedte vergroot. Maar de breedte verkleinen lukt niet meer vanwege die schuifbalken.
:?

divje op:

overflow: auto
width: 500 px;

Wordt ie 500 px breed. Als iets hem forceert om toch groter te worden (plaatje of lang woord), dan krijg je een scrollbalk.

Als je het gewoon weg wilt hebben kun je ook overflow:hidden gebruiken natuurlijk (mooier dan scrollbalken).

  • Onbekend
  • Registratie: Juni 2005
  • Laatst online: 23:26
Helaas lukt mij dat ook niet. Zowel als in <DIV> als in <TABLE>.

Hier is mijn stukje code.
Je kan het rechter rode stukje verplaatsen.
Naar rechts doet hij het goed. Maar naar links doet hij het niet zoals ik wil.
HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
<HTML>
    <HEAD>
    </HEAD>
    <BODY OnMouseUp="MouseUp(event)" OnMouseMove="MouseMove(event)" >
        <SCRIPT>
            Xmouse=0
            Ymouse=0
            Name="NULL"
            Action="NULL"
    
            function MouseDown(event,ScreenName)
            {
                Name=ScreenName;
                Xmouse=event.clientX;
                Ymouse=event.clientY;
                Action="EResize";
            }
    
            function MouseMove(event)
            {
                if (Action=="EResize")
                {
                    Var = event.clientX - Xmouse + Number(document.getElementById(Name).style.width.replace("px", ""));
                    document.getElementById(Name).style.width = Var;
                }       
    
                Xmouse=event.clientX;
                Ymouse=event.clientY;           
            }
            
            function MouseUp(event)
            {
                Name="NULL";
                Action="NULL";
            }       
        </SCRIPT>   
        
        <DIV ID="ScreenName" Name="ScreenName" STYLE="float: left; position: absolute; VISIBILITY: visible; margin-top: 10px; margin-left: 10px; width: 400px; height: 20px; ">
            Andere tabellen.
            <TABLE width=100%>
                <TR >
                    <TD BGCOLOR="#F00000" STYLE="width: 5px;">
                        &nbsp
                    </TD>
                    <TD STYLE="overflow: hidden"> 
                        eenhelelangeteksteenhelelangeteksteenhelelangetekst
                    </TD>
                    <TD BGCOLOR="#F00000" OnMouseDown="MouseDown(event,'ScreenName')" STYLE="cursor: e-resize;width: 5px;">
                        &nbsp
                    </TD>
                </TR>
            </TABLE>
            Andere tabellen.
        </DIV>
    </BODY>
</HTML>


Hoe krijg ik het voor elkaar dat als hij te ver naar links gaat, er óf een schuifbalk komt óf dat de tekst onzichtbaar wordt ?

Speel ook Balls Connect en Repeat


  • MBV
  • Registratie: Februari 2002
  • Laatst online: 01-05 17:46

MBV

overflow:auto is de tip, niet overflow:hidden
En dat uiteraard in combinatie met een geforceerde breedte

  • Onbekend
  • Registratie: Juni 2005
  • Laatst online: 23:26
MBV schreef op woensdag 24 augustus 2005 @ 13:57:
overflow:auto is de tip, niet overflow:hidden
En dat uiteraard in combinatie met een geforceerde breedte
Ik heb nu dit gedaan:
HTML:
1
2
3
4
5
.................
<TD STYLE="overflow: auto;width: 200px;"> 
    eenhelelangeteksteenhelelangeteksteenhelelangetekst
</TD>
.................

Maar dit werkt ook niet. Zowel onder FF als onder IE.

Speel ook Balls Connect en Repeat


  • Sappie
  • Registratie: September 2000
  • Laatst online: 27-04 07:10

Sappie

De Parasitaire Capaciteit!

opgegeven breedte (en hoogte) voor een table-cell is een aanbevolen breedte. Wanneer content niet in een table-cell past wordt deze in de meeste (zoniet alle) browsers uitgerekt.

je zou
code:
1
display: block;

mee kunnen geven, echter gedraagt een block level element zich weer anders dan een table-cell..

[ Voor 36% gewijzigd door Sappie op 24-08-2005 15:31 ]

Specs | Audioscrobbler


  • Onbekend
  • Registratie: Juni 2005
  • Laatst online: 23:26
Sappie schreef op woensdag 24 augustus 2005 @ 15:28:
opgegeven breedte (en hoogte) voor een table-cell is een aanbevolen breedte. Wanneer content niet in een table-cell past wordt deze in de meeste (zoniet alle) browsers uitgerekt.

je zou
code:
1
display: block;

mee kunnen geven, echter gedraagt een block level element zich weer anders dan een table-cell..
Bedankt. I.c.m. overflow: auto; werkt deze...
Ik heb 2 regels veranderd....

Voor degene die de uiteindelijke code willen hebben:
HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<HTML>
    <HEAD>
    </HEAD>
    <BODY OnMouseUp="MouseUp(event)" OnMouseMove="MouseMove(event)" >
        <SCRIPT>
            Xmouse=0
            Ymouse=0
            Name="NULL"
            Action="NULL"
    
            function MouseDown(event,ScreenName)
            {
                Name=ScreenName;
                Xmouse=event.clientX;
                Ymouse=event.clientY;
                Action="EResize";
            }
    
            function MouseMove(event)
            {
                if (Action=="EResize")
                {
                    Var = event.clientX - Xmouse + Number(document.getElementById(Name).style.width.replace("px", ""));
                    document.getElementById(Name+'T').style.width = Var-6;<!-- -->
                    document.getElementById(Name).style.width = Var;
                }       
    
                Xmouse=event.clientX;
                Ymouse=event.clientY;           
            }
            
            function MouseUp(event)
            {
                Name="NULL";
                Action="NULL";
            }       
        </SCRIPT>   
        
        <DIV ID="ScreenName" Name="ScreenName" STYLE="float: left; position: absolute; VISIBILITY: visible; margin-top: 10px; margin-left: 10px; width: 400px; height: 20px; ">
            Andere tabellen.
            <TABLE width=100%>
                <TR >
                    <TD BGCOLOR="#F00000" STYLE="width: 3px;">
                        &nbsp
                    </TD>
                    <TD STYLE="overflow: auto; display: block;width: 394px;height: 100px;" ID="ScreenNameT" Name="ScreenNameT"> <!-- -->
                        eenhelelangeteksteenhelelangeteksteenhelelangetekst

                    </TD>
                    <TD BGCOLOR="#F00000" OnMouseDown="MouseDown(event,'ScreenName')" STYLE="cursor: e-resize;width: 3px;">
                        &nbsp
                    </TD>
                </TR>
            </TABLE>
            Andere tabellen.
        </DIV>
    </BODY>
</HTML>

Speel ook Balls Connect en Repeat

Pagina: 1