Avatar billede Slettet bruger
26. august 2002 - 22:40 Der er 15 kommentarer og
2 løsninger

style="width:80%" giver problemer ved lange ord i textbox

Hej!

Hvis jeg har et textarea der er sat til width:80% i en style, vil den ved for meget indhold udvide tabellen omkring sig, og derved lave en scrollbar på hele siden.

Hvorfor gør den det? Hvis jeg korter af længden på den tekst feltet indeholder, forsvinder scrollbaren.

Og hvad gør jeg for at fjerne det?
Avatar billede 7th Praktikant
26. august 2002 - 22:46 #1
Mit umiddelbare indskydelse var at lave en tabel / td med en fast størrelse omkring textarea, men som jeg forstår dit spørgsmål, har du også gjort sådan. Måske ville en kodestump hjælpe...
Avatar billede Slettet bruger
26. august 2002 - 22:50 #2
OK...se på følgende:

<table width="100%" border="1">

<tr><td><input style="width:80%" type="text" value="etrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværeder"></td></tr>

</table>

Det jeg vil have er at de 80% fatter at det er 80% af tabellens bredde, ikke at hele det lange ord.

Det stinker sq lidt det her ;)

overflow:hidden skjulder desværre ikke problemet
Avatar billede 7th Praktikant
26. august 2002 - 23:04 #3
Hhmmm den er ret tricky...
Avatar billede Slettet bruger
26. august 2002 - 23:09 #4
jepper...det ligner lidt en bug af en slags.

Hvis du sætter table width=200 er det stadig et problem. Jeg ved ikke hvad faen der er galt med den textbox.

En løsning kunne være det her klamp:

<textarea rows="1" style="overflow:hidden">etrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværeder</textarea>

Så ligner det en textbox, men overflow virker :/
Avatar billede Slettet bruger
26. august 2002 - 23:14 #5
njae...den fylder stadig tabellen ud..fuck...
Avatar billede 7th Praktikant
26. august 2002 - 23:16 #6
Mit bedste ubrugelige bud lige nu er...

<form style="width: 100%; overflow: hidden">
<table width="100%" border="1">
<tr>
<td>
<textarea rows="1" style="width: 80%">etrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværeder</textarea>
</td>
</tr>
</table>
</form>

Men jeg arbejder videre på sagen...
Avatar billede Slettet bruger
26. august 2002 - 23:24 #7
Det sætter jeg da pris på. Det er underligt at forskellen mellem faste px og % er så stor...
Avatar billede 7th Praktikant
26. august 2002 - 23:32 #8
Hov lige et spørgsmål. Nu ved jeg ikke hvad du skal bruge det til, men jeg går ud fra det er brugeren som skal indtaste noget i feltet : altså hvis der bare skal indtastet noget så virker din form jo fint, da ordet jo automatisk bliver breaket, det gør det ihvertfald hos mig...

Problemet opstår jo selvfølgelig først når outputtet skal skrives ud i en eller anden tabel.
Avatar billede Slettet bruger
26. august 2002 - 23:36 #9
Nej, det er når brugeren skal rette sin e-mail :/
Avatar billede 7th Praktikant
26. august 2002 - 23:51 #10
Hhmm måske kan det løses med javascript eller php. Problemet opstår jo først når value width er længere end den angivet input eller textarea width. Jeg forstiller mig man så skulle lave en eller anden funktion som checker dette, og så indsætter et \n. Det er mit eneste bud.
Avatar billede Slettet bruger
26. august 2002 - 23:52 #11
Ja...måske man kunne aflæse bredden på et af de andre tekstfelter (der virker) og så lægge den ind i e-mail feltet. Men sikke noget klyt :/
Avatar billede 7th Praktikant
26. august 2002 - 23:57 #12
Jeg er bange for det er en IE bug af format ;) I Opera ser dit første eksempel noget andeledes ud med et meget lille input felt, og i NS virker det helt perfekt...
Avatar billede lequet Nybegynder
28. august 2002 - 19:23 #13
Meget mystisk, men en løsning er at placere dit text-felt i et div frem for en tabel celle, noget i stil med dette, det løser i hvert fald problemet.

<div style="width : 100% ; border : 1px solid black ; padding : 6px ;">

<input type="text" style="width : 80% ;" value="etrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværederetrigtigtlangordderikkekanværeder">

</div>
Avatar billede Slettet bruger
02. september 2002 - 14:11 #14
Jeg accepterer bare at sådan er det.

Hvis 7th lægger et svar må i slås om pointene ;)
Avatar billede dexter_dk Nybegynder
04. september 2002 - 08:50 #15
bredden på textarea skal angives i px, der er ikke særlig mange browserer der fatter %
Så prøv med px.
Avatar billede Slettet bruger
04. september 2002 - 13:13 #16
dexter_dk> Det er jo ikke et svar :P

Det er kun et problem når tekstens længde overstiger feltets bredde.

Og jo, de fleste nye browsere fatter godt andet end px. Heriblandt Netscape, Mozilla og IE. Dog har IE et problem med at tolke overflow (tilsyneladende)
Avatar billede 7th Praktikant
04. september 2002 - 15:29 #17
Nice løsning lequet ;)
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