Problem mit overflow:hidden
Sven
- css
Hallo ihr,
ich versuche eine Tabellenspalte zu begrenzen, falls der Inhalt aus dem Element herausragt.
Hier mein Beispielcode:
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td style="width:200px; overflow:hidden;">
asd
</td>
<td style="overflow:hidden;">
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
</td>
<td style="width:200px; overflow:hidden;">
asd
</td>
</tr>
</table>
Leider funktioniert das im IE nicht... die Spalte wird nach rechts gestreckt bis zum gehtnichtmehr....
Ich würde ja versuchen, die Spalten in CSS nachzubauen. Aber 1) habe ich da das Problem, dass die mittlere Spalte den Raum zwischen der linken und der rechten Spalte ausnutzen soll - eine feste Breite kommt da nicht in Frage. Auch Prozentangaben sind da Fehl am Platze.
Und 2) macht es keinen Sinn, eine tabellarische Auflistung in CSS nachzubilden... die Tabelle würde ich schon vorziehen.
Gibts eine Möglichkeit, dem IE klar zu machen, dass er den Inhalt zu begrenzen hat?
Lg
Sven
Ich würde ja versuchen, die Spalten in CSS nachzubauen. Aber 1) habe ich da das Problem, dass die mittlere Spalte den Raum zwischen der linken und der rechten Spalte ausnutzen soll - eine feste Breite kommt da nicht in Frage. Auch Prozentangaben sind da Fehl am Platze.
du versuchst doch nicht ein layout mit tabellen zu bauen?
Und 2) macht es keinen Sinn, eine tabellarische Auflistung in CSS nachzubilden... die Tabelle würde ich schon vorziehen.
oder sind es doch tabellarische daten?
Gibts eine Möglichkeit, dem IE klar zu machen, dass er den Inhalt zu begrenzen hat?
table-layout: fixed; könnte das richtig für dich sein - allerdings wirds dann mit der dynamischen breite der tabelle nicht mehr klappen fürchte ich
du versuchst doch nicht ein layout mit tabellen zu bauen?
Das würde mir nie einfallen ;)
Aber ich hab folgendes Problem: Ein Liste von Chaträumen soll tabellarisch dargestellt werden. Links der Name des Raum, dann das Thema, rechts die Anzahl der Benutzer im Raum.
Aber: Die linke Spalte und die rechte Spalte sollen ihre Breite in Pixeln zugewiesen bekommen, die mittlere soll dann den noch zur Verfügung stehenden Platz ausnutzen. Und genau das krieg ich mit CSS nicht hin.
Wenn ich jetzt die volle Breite zur Verfügung hätte, könnte ich mit Prozentangaben arbeiten... so dass alle 3 Spalten zusammen 100% ergeben. Aber links von der Tabelle fällt noch ein Teil weg für das Navigationsmenü, rechts fällt auch noch ein Teil weg.
Und wenn ich der mittleren Spalte mit CSS gar keine Breite zuweise, nimmt er nur das in Anspruch, was er auch benötigt. Wenn ich der Breite 100% zuweise, nimmt er 100% der Bildschirmbreite für diese eine Spalte, was viel zu viel ist.
Mit Tabellen geht das einfacher, wenn nur der IE sich so verhalten würde, wie er sollte...
table-layout: fixed; könnte das richtig für dich sein - allerdings wirds dann mit der dynamischen breite der tabelle nicht mehr klappen fürchte ich
Hmm... grummel... ich probier mal ein bisschen rum... vielen Dank erstmal ;)
Lg
Sven
Hi sven.
das problem kenne ich. versuchs vielleicht mal mit min-width:200px;
Bin mir aber im moment nicht sicher, obs im IE auch klappt. Ansonsten würde ich dir nen transparentes Pixel-Bild empfehlen, was in einer unsichtbaren Zelle oberhalb der Tabelle drin ist (sodass die Breite mindestens eingehalten wird.
somit könntest du auch die mindest-breite der restlichen Spalten festlegen.
Als alternativ letzte lösung würde ich dir empfehlen, mit php den inhalt einfach abzuschneiden. Ist aber n bissl kompliziert bei Courier-New-ähnlichen Schriftarten.
MFG
Griever
Hallo.
Ansonsten würde ich dir nen transparentes Pixel-Bild empfehlen, was in einer unsichtbaren Zelle oberhalb der Tabelle drin ist (sodass die Breite mindestens eingehalten wird.
Selbst wenn das die einzige Möglichkeit wäre, müsste man es als Murks bezeichnen.
MfG, at