Supportnet Computer
Planet of Tech

Supportnet / Forum / Webseiten/HTML

Automatisches vergrößern einer Tabellenspalte ?





Frage

Hallo, also ich habe mal wieder ein problem mit den Tabellen. Momentan sieht die seite so aus (siehe http://www.manga-community.de/muhwurst/ ) mit NAvi, Content und News, wenn ich jetzt die rechte spalte entfernen möchte, sollte sich der Content automatisch nach rechts "weiterwachsen", aber wie machen ich das, schaut auch mal bitte in den Quelltext da ich glaube das dort auch was nicht hinhaut. Mit welchen CSS befehl kann ich das machen ? Danke an euch !

Antwort 1 von semi

Hol' Dir das hier. Ist so auf die schnelle gemacht und etwas zu breit um es hier anzuzeigen.
Statt visibility:visible/hidden kannst Du auch display:block/none verwenden.
display funktioniert aber nicht unter Opera 5.x/6.x

Gruß,
Michael



Antwort 2 von Skhoney

naja das heist also das es dürbergelgt wird oder ? so wie ich das verstanden habe! ich brauch das aber für css

Antwort 3 von semi

Es wird nicht drübergelegt sondern versteckt und die mittlere Spalte vergrößert.
CSS stellt sich nicht von alleine ein. Ohne Javascript geht es nicht.
Hier noch eine Lösung mit Tabellen.

<html>
<body>
<form>
<input
  type=button
  value="visibility:hidden"
  onClick="document.getElementById('a').style.visibility='hidden';"
>
<input
  type=button
  value="visibility:visible"
  onClick="document.getElementById('a').style.visibility='visible';"
>
<input
  type=button
  value="display:none"
  onClick="document.getElementById('a').style.display='none';"
>
<input
  type=button
  value="display:block"
  onClick="document.getElementById('a').style.display='block';"
>
</form>
<table width=900 height=200>
<tr>
  <td width=200 bgColor="blue"></td>
  <td bgColor="green"></td>
  <td id="a" width=200 bgColor="pink"></td>
</tr>
</table>
</body>
</html>
Beachte insbesondere den Unterschied zwischen display und visibility. Display entfernt die Spalte komplett, visibility versteckt sie nur, ohne den Platz frei zu geben.

Gruß,
Michael

Antwort 4 von Skhoney

aha ok
sorry wenn es dumm klingt aber, ich will ja natürlich nicht so einen Button wo ich drauf klick, sondern das muss ich in die tabellen spalte irgendwie implimentieren damit das sofort geht, außerdem soll es dann später in php - es ist ja nicht für mich deswegen lässt sich das auch bissl schlecht erklären.

Antwort 5 von semi

Irgendwie implementieren find' ich gut :-)

Wenn es in PHP generiert wird, dann kannst Du, wenn erwünscht, komplett auf die rechte Spalte verzichten.
Klartext: Einmal wird eine Seite mit und einmal ohne die Spalte generiert.

Antwort 6 von Skhoney

=) naja das habe ich ja gemacht (2 verschiedenen Seiten), aber der möchte das nicht ! das ist je mein Problem er möchte das sich die spalte automatisch so ändert ohe das er was in der php seiten dings ändern muss !

Antwort 7 von semi

Was soll der Auslöser dafür sein, dass die Spalte versteckt wird?


Antwort 8 von Skhoney

wie auslöser ?

falls du icq hast könnten wir da mal drüber reden das ist hier ein bissel blöd zu erklären ! meine Nummer: 243048261

Antwort 9 von semi

Nein ich habe kein ICQ.

Mit Auslöser meine ich unter welcher Bedingung soll die spalte angezeigt bzw. nicht angezeigt werden.
Man muß es irgendwie entscheiden.

Gruß,
Michael

Antwort 10 von ZiP-y

und bin "der" den skhoney meint :)

ich brauch den quelltext so, das ich 3 spalten habe. ich mach den quelltext in PHP rein und habe nicht imma eine rechte spalte ... wenn ich die rechte spalte nich brauch und nichts eintrage (also die navibox rechts weglasse) dann soll die spalte "optisch verschwinden" und die mitte soll dann automatisch breiter sein.

ich hoffe ich hab das verständlich geschrieben :)

Antwort 11 von Skhoney

genau das meinte ich ja - ich hoffe du kannst uns jetzt weiter helfen !

Antwort 12 von semi

Gebe die dritte Spalte nicht aus, wenn sie nicht mehr gebraucht wird.
In PHP geht es, indem Du den entsprechenden Code auskommentierst.
/*
hier die dritte Spalte
*/

Oder um sich das zu sparen, irgendeine Einstellung am Anfang des Skriptes verwenden.
z.B.

...
$spalte3ausgeben = false;
...
...
echo "<table ....";
echo "<tr>";
echo "<td>Spalte 1</td>";
echo "<td>Spalte 2</td>";
if($spalte3ausgeben)
  echo "<td>Spalte 3</td>";
echo "</tr>";
echo "</table>";
So brauchst Du nur $spalte3ausgeben = true zu setzen, damit sie ausgegeben wird.
Oder, um überhaupt keine Änderungen am Skript vornehmen zu müssen.

$spalte3ausgeben = file_exists("blabla.tmp");

Wenn die Datei blabla.tmp existiert, dann die dritte Spalte ausgeben.

Gruß,
Michael

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: