doggelitoMedlem sedan juni 20003 100 inlägg
problems!
med denna kod blir sidan "jätte bred", scrollad horisontellt.
innehållet i tabellen är väldigt bred men kan man inte få div:en att bryta av vid 100% av skärmens bredd?
<div style="width:100%; overflow:scroll;">
<table style="width:100%" cellpadding="0" cellspacing="0">
<tr>
<td>jättebred kod</td>
</tr>
</table>
</div>
EsenMedlem sedan mars 20023 534 inlägg
Förstår inte riktigt vad du menar, För mig så bryter den av vid 100% av skärmen...
Vad använder du för webbläsare och kan du skicka med en bild?
doggelitoMedlem sedan juni 20003 100 inlägg
ops, det gjorde det visst!
grejjen är att lagret i sin tur ligger i en tabell.
testa koden nedan så förstår du nog vad jag i egentligen menade! :)
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="120">dfsdfsdf;</td>
<td>
<div style="width:100%; overflow:scroll;">
<table style="width:100%" cellpadding="0" cellspacing="0">
<tr>
<td>jättebredkodhjjjjjjjjjjjjjjjjjjjjjjjjjjggggggggggggggggggggggggggggggggggjhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhgggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
SlarvpelleMedlem sedan mars 200464 inlägg
Jag får en horizontell rullningslist i mina webbläsare, vilket är normalt. Eller vill du kapa av det överflödiga innehållet? Använd isf 'overflow: hidden'.
doggelitoMedlem sedan juni 20003 100 inlägg
hmm, det går inge bra med mina exempel! :(
det blev tydligen radbryt i strängen när jag klistrade in koden i tråden.
sätt ihop texten till en lång sträng så får du se vad jag menar. (hoppas jag!)
SlarvpelleMedlem sedan mars 200464 inlägg
Nu såg jag problemet i IE6. I Mozilla och Opera ser det helt OK ut.
En lösning skulle kanske vara att inte använda tabeller.
EsenMedlem sedan mars 20023 534 inlägg
doggelito skrev:
hmm, det går inge bra med mina exempel! :(
det blev tydligen radbryt i strängen när jag klistrade in koden i tråden.
sätt ihop texten till en lång sträng så får du se vad jag menar. (hoppas jag!)
Visst då blir det så. Men nu e ju frågan: Kommer du att ha så långa texter utan mellanslag?
Så fort du sätter in ett mellanslag i texten så kommer den automatiskt att bryta koden och den kommer bara att gå fram till fönstrets slut och sen bryta... Detta händer enbart ifall du skriver så långa texter utan radbryning eller mellanslag. Och eftersom det inte finns något ord som e så långt så bör det inte vara några problem att undvika..
icaaqMedlem sedan okt. 20004 910 inlägg
Och om du har tillgång till något serverbaserat språk kan du bryta upp såna strängar
mv icaaq
doggelitoMedlem sedan juni 20003 100 inlägg
tack för era inlägg!
dock tolkar jag det som att det inte går att fixa till div:en.
innehållet i tabellen kan jag ej göra nått åt då den är databasdriven.
konstigt bara att det funkar om man lägger div:en direkt under body-taggen och felar så rejält i en tabellkolumn!
jarvkloMedlem sedan juli 20013 295 inlägg
Hmm...
Den direkta orsaken till att det blir "konstigt" är antagligen att webbläsarna har lite olika hantering av relativa bredder på tabellceller... (Du anger ju aldrig bredd på den td som din "overflow-div" ligger i)...
Nåja.
Problemet går att lösa även i MSIE med en "fuling" såhär:
MSIE har ett eget sätt att beräkna tabellers layout som man kan aktivera genom att ge en tabell stilen
table-layout:fixed
Gör man det så beräknas samtliga cellers bredd en gång för alla baserat på vad som anges på första tabellraden (dvs oavsett vad det står för bredder längre ner i tabellen och oavsett vilket innehåll celler längre ner i tabellen har)...
Så - En fuling här är att lägga upp en ny "supertunn" förstarad i tabellen med "mindre speciella" värden som får tabellens kolumnbredder att bli "OK" t.ex. såhär:
<table width="100%" border="0" cellspacing="0" cellpadding="0" [b]style="table-layout:fixed"[/b]>
[b]<tr style="height:0px;overflow:hidden;"><td width="120"></td><td></td></tr>[/b]
<tr>
<td width="120">dfsdfsdf;</td>
<td>
[...]
Prova och se - gör du såhär så blir det iallafall som du tänkt dig i "sidled" (och lösningen verkar såvitt jag kan se fungera likadant även i Mozilla...). ;)
Priset du får betala är att din CSS sedan inte längre validerar... Men det kan du lösa genom att lägga till table-layout:fixed mha en "villkorlig kommentar" (sök - det finns exempel på hur det funkar i detta forum!) om du har den ambitionen ;)
SlarvpelleMedlem sedan mars 200464 inlägg
jarvklo skrev:
Priset du får betala är att din CSS sedan inte längre validerar...
Men 'table-layout:fixed' ingår ju i CSS2? http://www.w3.org/TR/REC-CSS2/tables.html#propdef-table-layout
doggelitoMedlem sedan juni 20003 100 inlägg
tack jarvklo, det funkar finfint! :bire
jarvkloMedlem sedan juli 20013 295 inlägg
Slarvpelle skrev:
jarvklo skrev:
Priset du får betala är att din CSS sedan inte längre validerar...
Men 'table-layout:fixed' ingår ju i CSS2? http://www.w3.org/TR/REC-CSS2/tables.html#propdef-table-layout
Ja det har du rätt i - Jag måste ha blandat ihop den med något annat ;)
Tack för påpekandet :bire