Spaltenbreite bei Tabelle in PHP

exiter28

Erfahrenes Mitglied
Hallo Jungs,

ich hab ein kleines Problem.

Mit folgendem Code werden Infos in einer Tabelle mit einer Zeile und 2 Spalten
geschrieben. Das Problem ist, daß die erste Spalte immer ca. 80% der Breite ist,
und die zweite der Rest. Ich möchte aber genau die umgekehrte Reihenfolge haben,
also daß die erste Spalte 20% und die zweite 80% hat. Leider bekomme ich das
nicht hin. Mit witdh funktionierts auch nicht.

Habt Ihr einen Tipp ?
Danke schon mal!

PHP:
      echo '<td align="center" background="images/tablebg_blue.gif" style="font-size: 11px;font-weight:normal; vertical-align: middle; color:#ffffff; border-left-style:solid; border-left-width:1px; border-bottom-style:solid; border-bottom-width:1px; border-color:#000000;">'.'<img style="vertical-align: middle;" src="../images/user.gif" alt="user" />'."&nbsp;".$daten['name']."<br>"."am: ".$daten['datum']."<br>".'<a href="mailto:'.$daten['email'].'?subject=Anfrage an: '.$daten['name'].'" method="post" target="" enctype="text/plain"><img style="border:none; border: 0px; vertical-align: middle;" src="../images/mail.gif" alt="mail" /></a>'."<br>".$daten['email']."<br>"."Homepage: ".$daten['url'].'</td>'."\r\n";

      echo '<td align="center" style="border-right-style:solid; border-right-width:1px; border-bottom-style:solid; border-bottom-width:1px; vertical-align: middle; border-color:#000000; font-family: verdana, arial, sans-serif; font-size: .68em; color: #D1D3D7;" bgcolor="#595959">'.$text."&nbsp;".'</td>'."\r\n";
      echo '<tr>'."\r\n";
      echo '<tr>'."\r\n";
 
Hi ^^

du musst natuerlich den td usw .. auch in ein table tag packen, dann klappt das auch mit der relativen breite ... am besten
du nimmst css dafuer zb: style="width: 20%;" ... das muesste funktionieren
 
Das Problem ist, daß die erste Spalte immer ca. 80% der Breite ist,
und die zweite der Rest. Ich möchte aber genau die umgekehrte Reihenfolge haben,
also daß die erste Spalte 20% und die zweite 80% hat. Leider bekomme ich das
nicht hin. Mit witdh funktionierts auch nicht.

Habt Ihr einen Tipp ?
Klar, wären wir hier sonst anwesend? :)

Ich weiß ja nicht, was du da konkret erfolglos mit width (HTML-Attribut o. CSS-Eigenschaft?) versucht hast, aber ich konnte deine Vorgabe beschwerdefrei umsetzen.

HTML:
<table border="1" style="width:100%;table-layout:fixed;">
  <tr>
    <td style="width:20%;">Spalte 1</td>
    <td style="width:80%;">Spalte 2</td>
  </tr> 
</table>

Vielleicht verwehrt sich mir das Verständnis für dein Problem auch in deiner mageren Ausführung, was genau du versucht hast, sowie in deinem PHP-Codeschnipsel, den du hier im HTML-Forum entgegenkommenderweise in seiner geparsten Fassung zeigen solltest, da wir uns hier nicht im PHP-Bereich befinden, zweitens daraus nicht ersichtlich ist, wie sich die geladenen Inhalte im einzelnen zusammensetzen, und zu guter letzt nicht jeder User, der mit der Auszeichnungssprache HTML vertraut ist, geicher - / zwingendermaßen diese Scriptsprache beherrscht.
 
Zuletzt bearbeitet:
also mit css hab ich das mal versucht. Doch leider vergebens.
Irgendwie verhählt sich das mit php ech anders. Kann das sein?

PHP:
echo '<td align="center" background="http://www.tutorials.de/images/tablebg_blue.gif" style="font-size: 11px;font-weight:normal; vertical-align: middle; color:#ffffff; border-left-style:solid; border-left-width:1px; border-bottom-style:solid; border-bottom-width:1px; border-color:#000000; width:20%;" >'.'<img style="vertical-align: middle;" src="http://www.tutorials.de/images/user.gif" alt="user" />'."&nbsp;".$daten['name']."<br>"."am: ".$daten['datum']."<br>".'<a href="mailto:'.$daten['email'].'?subject=Anfrage an: '.$daten['name'].'" method="post" target="" enctype="text/plain"><img style="border:none; border: 0px; vertical-align: middle;" src="http://www.tutorials.de/images/mail.gif" alt="mail" /></a>'."<br>".$daten['email']."<br>"."Homepage: ".$daten['url'].'</td>'."\r\n";

      echo '<td align="center" style="border-right-style:solid; border-right-width:1px; border-bottom-style:solid; border-bottom-width:1px; vertical-align: middle; border-color:#000000; font-family: verdana, arial, sans-serif; font-size: .68em; color: #D1D3D7; width:*%;" bgcolor="#595959">'.$text."&nbsp;".'</td>'."\r\n";
 
Nein, php kann nichts am Designverhalten ändern.

Du machst Dir zB 2 Klassen:
HTML:
.eighty{width:80%;}
.twenty{width:20%;}

und benutzt diese - ob php oder direkt html:
PHP:
echo '<table>';
echo '<tr>';
echo '<td class="eighty">achtzig Prozent</td>';
echo '<td class="twenty">zwanzig Prozent</td>';
echo '</tr>';
echo '</table>';
mfg chmee
 
hmm... danke, aber geht immer noch nicht.
Ich hab die beiden Classen im head bereich
definiert:

PHP:
    <script type="text/javascript">
      .eighty{width:80%;}
      .twenty{width:20%;}
    </script>
</head>


      echo '<td class="twenty" align="center" background="images/tablebg_blue.gif" style="font-size: 11px;font-weight:normal; vertical-align: middle; color:#ffffff; border-left-style:solid; border-left-width:1px; border-bottom-style:solid; border-bottom-width:1px; border-color:#000000;" >'.'<img style="vertical-align: middle;" src="http://www.tutorials.de/images/user.gif" alt="user" />'."&nbsp;".$daten['name']."<br>"."am: ".$daten['datum']."<br>".'<a href="mailto:'.$daten['email'].'?subject=Anfrage an: '.$daten['name'].'" method="post" target="" enctype="text/plain"><img style="border:none; border: 0px; vertical-align: middle;" src="http://www.tutorials.de/images/mail.gif" alt="mail" /></a>'."<br>".$daten['email']."<br>"."Homepage: ".$daten['url'].'</td>'."\r\n";

      echo '<td class="eighty" align="center" style="border-right-style:solid; border-right-width:1px; border-bottom-style:solid; border-bottom-width:1px; vertical-align: middle; border-color:#000000; font-family: verdana, arial, sans-serif; font-size: .68em; color: #D1D3D7;" bgcolor="#595959">'.$text."&nbsp;".'</td>'."\r\n";
 
Wenn mein funktionstüchtige Beispiel bei dir, aus welchem Grund auch immer, nicht funktioniert, solltest du hier zumindest auf die erhaltenen Antworten eingehen, und der zweimalig ausgesprochenen Bitte nachkommen, den verarbeiteten PHP-Code in seiner HTML-Fassung zu zeigen, damit man einen Einblick gewinnt, was genau, und in welcher Form in die beiden Zellen geladen wird, z.b. eine ellenange Zeichenkette ohne enthaltene Leerzeichen, die die festgelegte Breite "sprengt".

Vielleicht verwehrt sich mir das Verständnis für dein Problem auch in deiner mageren Ausführung, was genau du versucht hast, sowie in deinem PHP-Codeschnipsel, den du hier im HTML-Forum entgegenkommenderweise in seiner geparsten Fassung zeigen solltest, da wir uns hier nicht im PHP-Bereich befinden, zweitens daraus nicht ersichtlich ist, wie sich die geladenen Inhalte im einzelnen zusammensetzen, und zu guter letzt nicht jeder User, der mit der Auszeichnungssprache HTML vertraut ist, geicher - / zwingendermaßen diese Scriptsprache beherrscht.

Vielen Dank für das aufschlußreiche Gespräch. Mögen sich hier andere mit deiner ignoranten Art herumschlagen.

Für sowas ist mir meine Zeit viel zu kostbar :p
 
Zuletzt bearbeitet:
PHP:
<html>
<head>


</head>
<body bgcolor="#ffffff">

<table width="100%" cellpadding="10" cellspacing="0" border="0" bordercolor="#000000">
<tr>
    <th height="31px" width="100%" style="vertical-align: middle;" bgcolor="">Inhalt</th>
</tr>

<?php

while ($daten = mysql_fetch_array( $db_erg, MYSQL_ASSOC))
   {
      // text replacen (str_replace = $search = zu suchender Text, &replace = gesuchter
      // Text ersetzen mit, $daten = Text in welchem gesucht werden soll. Rückgabe in $text)
      $text = str_replace($search, $replace, $daten['eintrag']);

      echo '<tr>'."\r\n";
      echo '<td align="center" background="http://www.tutorials.de/images/tablebg_blue.gif" style="font-size: 11px;font-weight:normal; vertical-align: middle; color:#ffffff; border-left-style:solid; border-left-width:1px; border-bottom-style:solid; border-bottom-width:1px; border-color:#000000;" >'.'<img style="vertical-align: middle;" src="http://www.tutorials.de/images/user.gif" alt="user" />'."&nbsp;".$daten['name']."<br>"."am: ".$daten['datum']."<br>".'<a href="mailto:'.$daten['email'].'?subject=Anfrage an: '.$daten['name'].'" method="post" target="" enctype="text/plain"><img style="border:none; border: 0px; vertical-align: middle;" src="http://www.tutorials.de/images/mail.gif" alt="mail" /></a>'."<br>".$daten['email']."<br>"."Homepage: ".$daten['url'].'</td>'."\r\n";

      echo '<td align="center" style="border-right-style:solid; border-right-width:1px; border-bottom-style:solid; border-bottom-width:1px; vertical-align: middle; border-color:#000000; font-family: verdana, arial, sans-serif; font-size: .68em; color: #D1D3D7;" bgcolor="#595959">'.$text."&nbsp;".'</td>'."\r\n";
      echo '<tr>'."\r\n";
      echo '<tr>'."\r\n";
      echo '<td style="background-image:url(../images/s8.jpg);background-repeat:repeat-x;background-position: 0% 0%;">'."&nbsp;".'</td>';
      echo '<td style="background-image:url(../images/s8.jpg);background-repeat:repeat-x;background-position: 0% 0%;">'."&nbsp;".'</td>';
      echo '<tr>'."\r\n";

   }


?>
</table>
</body>
</html>

Sorry,... hier ist mal der Code....
 
Zuletzt bearbeitet:
CSS-Vorgaben werden auch nicht im Javascript-Bereich definiert!

HTML:
<style type="text/css">
             body { color: purple; background-color: #d8da3d }
      </style>

mfg chmee
 
Zurück