bituniverse.com Foren-Übersicht bituniverse.com
Entwickler Forum
 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Tabellenproblem

 
Neues Thema eröffnen   Neue Antwort erstellen    bituniverse.com Foren-Übersicht -> Clientseitige Programmierung
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
M



Anmeldedatum: 05.11.2007
Beiträge: 107
Wohnort: Aachen

BeitragVerfasst am: Sa 24 Mai, 2008 14:09    Titel: Tabellenproblem Antworten mit Zitat

Irgendwie ist hier der Wurm drin, ich komme einfach nicht darauf, den Fehler zu finden.

Ich habe eine Tabelle mit einer Breite von 1000 px
Diese ist unterteilt in eine 14 px, eine 250 px und eine 736 px breite Zelle.
Für die 736 Zelle habe ich style="padding-left:20px;padding-right:20px;" gesetzt, um geeignete Textabstände zu bekommen.

Soweit alles wunderbar. Aber sobald ich in die 736er Zelle eine weitere Tabelle hineinpacke und diese Breiter als 300 px wird, verschiebt sich die Breite der übergeordneten Tabelle. Ganz so, als wäre in der Zelle nicht genug Platz.

Ich muss ehrlich gestehen, dass ich keine Ahnung habe, was hier schief läuft. Vielleicht seh ich den Wald vor lauter Bäumen nicht? Findet einer von euch den Fehler?

Code:
  1. <table width="1000" cellspacing="0" cellpadding="0">
  2.         <tr>
  3.           <td width="14"></td>
  4.           <td width="250">BILD</td>
  5.           <td width="736" colspan="2"></td>
  6.         </tr>
  7.         <tr>
  8.           <td width="1000" colspan="4">BILD</td>
  9.         </tr>
  10.         <tr>
  11.           <td width="14"></td>
  12.           <td width="250">TEXT</td>
  13.           <td width="736" valign="top" style="padding-left:20px;padding-right:20px;">
  14.             <table width="600">
  15.               <tr>
  16.                 <td width="125" valign="top">TEXT</td>
  17.                 <td width="475">TEXT</td>
  18.               </tr>
  19.             </table>
  20.           </td>
  21.         </tr>
  22.         <tr>
  23.           <td width="14"></td>
  24.           <td width="250">BILD</td>
  25.           <td width="736"></td>
  26.         </tr>
  27.       </table>

Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
blinky
Moderator


Anmeldedatum: 04.11.2007
Beiträge: 6

BeitragVerfasst am: Mo 26 Mai, 2008 08:48    Titel: Antworten mit Zitat

Also ...

du hast ja insgesamt 4 spalten
was du mit

Code:
  1. <tr>
  2.           <td width="14"></td>
  3.           <td width="250">BILD</td>
  4.           <td width="736" colspan="2"></td>
  5.         </tr>
  6.         <tr>
  7.           <td width="1000" colspan="4">BILD</td>
  8.         </tr>

auch konsequent verfolgst. Aber bei

Code:
  1. <td width="736" valign="top" style="padding-left:20px;padding-right:20px;">

fehlt das colspan="2"
genauso wie bei

Code:
  1. <td width="736"></td>

Hoffe das hilft dir weiter.

Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
M



Anmeldedatum: 05.11.2007
Beiträge: 107
Wohnort: Aachen

BeitragVerfasst am: Mo 26 Mai, 2008 12:31    Titel: Antworten mit Zitat

Oh, das stimmt, habe ich total übersehen. Ich habe die beiden colspan jetzt herausgelöscht bzw. auf 3 geändert, weil ich gar nicht mehr weiß, wie ich da auf 4 gekommen bin. Schließlich sind ja überall nur drei vorhanden Smile

Mein Problem löst das aber leider noch nicht Sad

Code:
  1. <table width="1000" cellspacing="0" cellpadding="0">
  2.         <tr>
  3.           <td width="14"></td>
  4.           <td width="250">BILD</td>
  5.           <td width="736"></td>
  6.         </tr>
  7.         <tr>
  8.           <td width="1000" colspan="3">BILD</td>
  9.         </tr>
  10.         <tr>
  11.           <td width="14"></td>
  12.           <td width="250">TEXT</td>
  13.           <td width="736" valign="top" style="padding-left:20px;padding-right:20px;">
  14.             <table width="600">
  15.               <tr>
  16.                 <td width="125" valign="top">TEXT</td>
  17.                 <td width="475">TEXT</td>
  18.               </tr>
  19.             </table>
  20.           </td>
  21.         </tr>
  22.         <tr>
  23.           <td width="14"></td>
  24.           <td width="250">BILD</td>
  25.           <td width="736"></td>
  26.         </tr>
  27.       </table>

Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Simon W.
Anti-verdenglischungs-Abgeordneter


Anmeldedatum: 05.11.2007
Beiträge: 283
Wohnort: Aachen

BeitragVerfasst am: Mo 26 Mai, 2008 16:50    Titel: Antworten mit Zitat

das erste manko, was mir da so auffällt ist: du vermischst css und html-layout-elemente.
html legt die struktur fest, css das design. spalten-breiten gehören nunmal nicht zur struktur. dann sehen wir weiter Smile

Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
M



Anmeldedatum: 05.11.2007
Beiträge: 107
Wohnort: Aachen

BeitragVerfasst am: Mo 26 Mai, 2008 21:07    Titel: Antworten mit Zitat

Ich habe jetzt in den jeweiligen <table> Tags ein style="table-layout:fixed;width:XXX;" stehen und die einzelnen Zellen durch style="width:XXX;" in ihrer Breite bestimmt. Nachdem ich dann noch einigen Grafiken den Feinschliff gegeben habe, verhält sich nun alles so wie ich es mir vorstelle.
Vielen Dank für die Hilfe! Ich weiß zwar nicht, was defakto an dem alten Code falsch war, aber solange der neue funktioniert und noch dazu eleganter ist, kann mir das auch egal sein Very Happy

Das der Umstieg von Tabellen auf CSS kommen muss, ist mir klar, habe das Ganze bloß bisher immer vor mir hergeschoben, weil ich andere Dinge als wichtiger empfand und bisher ja alles funktioniert hat Embarassed Twisted Evil

Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Simon W.
Anti-verdenglischungs-Abgeordneter


Anmeldedatum: 05.11.2007
Beiträge: 283
Wohnort: Aachen

BeitragVerfasst am: Mo 26 Mai, 2008 21:56    Titel: Antworten mit Zitat

Aber alleine, wenn du schon bei jeder Spalte in Zelle immer wieder die selbe Breite angibst, wirst du dir schon denken: eigentlich würde es doch reichen, <td class="spalte44"> zu schreiben, und schwupps, kannst du das komplette Layout der Tabelle in deiner css-Datei ändern. Das ist noch um einiges eleganter, als jeweils style= zu benutzen. Gerade die Hierarchie, die man in css ausdrücken kann, macht das ganze zu einer schönen Layout-Sprache. (Dennoch kann das dadurch auch ganz schön undurchsichtig werden ^^)

Also in deinem fall machst du einfach die css-Datei ungefähr so:
#meinetab {
... Eigenschaften deiner tabelle;
}

#meinetab td.spalte1 {
... Eigenschaften von Spalte 1
width: 50px;
}

und dann in der Seite:
<table id="meinetab">
<tr><td class="spalte1">blubb</td><td class="spalte2....
</table>


Und allgemein solltest du bei Größenangaben die Einheit nicht vernachlässigen. Normalerweise ist das px, aber man weiß ja nie...

Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
M



Anmeldedatum: 05.11.2007
Beiträge: 107
Wohnort: Aachen

BeitragVerfasst am: Mo 26 Mai, 2008 23:05    Titel: Antworten mit Zitat

Vom Grundprinzip ist mir das bewusst und ich sag mir auch immer wieder, ich muss mich mal hinsetzen und an einem Projekt das alles konsequent durchziehen, um da richtig rein zu kommen, aber bis jetzt war immer irgendwas anderes wichtiger ^^
Habs halt immer vor mir hergeschoben...

Die Einheiten habe ich jeweils angegeben, ohne verschiebt sich bei mir auch alles.

Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    bituniverse.com Foren-Übersicht -> Clientseitige Programmierung Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB2.de
Powered by WebRing.