"rowspan" verschiebt Tabelle um einige Pixel

Status
Nicht offen für weitere Antworten.

hans_schmid

Erfahrenes Mitglied
Hallo,

ich habe ein kleines Problem mit dem "rowspan" Attribut. Da ich auf meiner Seite verschachtelte Tabellen verwende, muss ich bei den News einige Zeilen verbinden, damit sich auf der anderen Seite die Navigation nicht verschiebt.
Das klappt auch prinzipiell ganz gut, nur wird die Grafik "News" nach einfügen des rowspans um zwei Pixel nach unten und links verschoben.
Besser zu sehen auf den beigefügten Grafiken.

Auf den Quelltext verzichte ich jetzt mal, weil der ziemlich lang wäre...
Ich hoffe mal, dass es da einen einfachen Trick gibt, so dass ich nicht den ganzen aufbau ändern muss...

MfG
Hans
 

Anhänge

  • vor_rowspan.JPG
    vor_rowspan.JPG
    2,2 KB · Aufrufe: 77
  • nach_rowspan.JPG
    nach_rowspan.JPG
    1,8 KB · Aufrufe: 78
Hallo,

das bringt leider auch keine Verbesserung.

Der Fehler tritt übrigens ausschließlich im IE auf. Die anderen Browser (Opera, Netscape, Firefox, Mozilla) stellen die Seite korrekt dar!

Hat evtl. noch jemand eine Idee, woran das liegen könnte?

MfG
Hans
 
Zeig doch bitte mal den Quellcode, bzw. einen Ausschnitt!
Vielleicht kann man da ja etwas erkennen, wo der Fehler liegen könnte.
 
Ok, dann hier mal der Ausschnitt, der anscheinend Probleme macht:

HTML:
<td height="145" valign="top" rowspan="4">
	<table width="100%" border="0" cellpadding="0" cellspacing="0">
	<tr> 
		<cfoutput>
 	   <TD width="223" height="26" valign="top"><table width="100%" border="0" cellpadding="0" cellspacing="0" background="images/#farbe#_header_bg.gif">
	    </cfoutput>   
	<tr> 
    	<td height="4"></TD>
    </tr>
    <tr> 
        <TD width="223" height="10" align="center" valign="top"> <div align="center" class="sub">News</div></TD>
    </tr>
	<tr> 
        <TD height="6"></TD>
    </tr>
	</table>
</TD>
 
hans_schmid hat gesagt.:
HTML:
<td height="145" valign="top" rowspan="4">
	<table width="100%" border="0" cellpadding="0" cellspacing="0">
	<tr> 
		<cfoutput>
 	   <TD width="223" height="26" valign="top"><table width="100%" border="0" cellpadding="0" cellspacing="0" background="images/#farbe#_header_bg.gif">
	    </cfoutput>   
	<tr> 
    	<td height="4"></TD>
    </tr>
    <tr> 
        <TD width="223" height="10" align="center" valign="top"> <div align="center" class="sub">News</div></TD>
    </tr>
	<tr> 
        <TD height="6"></TD>
    </tr>
	</table>
</TD>

Das würde ich wie folgt ändern:
HTML:
<td height="145" valign="top" rowspan="4">
	<table width="100%" border="0" cellpadding="0" cellspacing="0">
	<tr>
 	 <TD width="223" height="26" valign="top">
             <table width="100%" border="0" cellpadding="0" cellspacing="0" background="images/#farbe#_header_bg.gif" style="margintop:0px">  
             <tr> 
    	      <td height="4" border="0"></TD>
             </tr>
             <tr> 
               <TD width="223" height="10" align="center" valign="top" border="0">
                <div align="center" class="sub">News</div>
               </TD>
             </tr>
	    <tr> 
              <TD height="6" border="0"></TD>
             </tr>
	    </table>
          </TD>
........
Versuchs mal so, ist nen Versuch wert.
 
fällt mir gerade ein:

Vielleicht hast du dich verzählt, bei den <td>'s, die zusammen gesetzt werden sollen.
Du setzt 4 Stück zusammen, dann müssen konstant bei dem <tr> davor und bei dem
<tr> danach, genau 4 <td> sein.
 
Also das hab ich auch schon versucht. Allerdings ist 4 der einzige Wert, bei dem das Layout nicht zerissen wird.

MfG
Hans
 
Setze in die leeren Tabellenzellen ein transparentes Gif (ursprüngliche Größe 1px x 1px) aber in der jeweiligen Höhe und Größe wie die Zelle sein soll, also dann z.B. so:

HTML:
<TD height="6" border="0"><img scr="images/spacer.gif" alt="" height="6" width="100"></TD>
Je nachdem wie breit (width) die Tabellenzelle dann tatsächlich ist, musst Du das anpassen.

Und in dieser Zeilte:
HTML:
<TD width="223" height="26" valign="top"><table width="100%" border="0" cellpadding="0" cellspacing="0" background="images/#farbe#_header_bg.gif">
Scheint noch das Schlußtag </td> zu fehlen.

Generell gilt auch, niemals eine Zelle ganz leer zu lassen, benutze wenn es sein muss &nbsp; für eine Leerzeile.

Anzumerken ist noch, Dein Codestil ist nicht wirklich berauschend, Groß- und Kleinschreibung so zu vermischen ist nicht wirklich gerade hilfreich beim durchforsten des Codes, und dieses komische Tabellenkonstrukt sieht mir auch sehr fehleranfällig aus.
 
Status
Nicht offen für weitere Antworten.
Zurück