donut: Tabelleninhalte ausrichten - Netscape?

Ich habe eine Navigation die ich automatisch in ASP erstellen lasse und welche aus einer Ober- und einer Unterleiste besteht.

Die Unternavigationsleiste soll an der ersten Zelle der Obernavigationsleiste anfangen, die mit einem Wert belegt ist.

Bei IE funktioniert es so wie es gedacht war...

Bei NS macht er hingegen wenn ich das Blindgif einfüge die Spalte zu lang, so das sie die geamte obere Navigation mit nach vorne verschiebt.

Wie erkäre ich Netscape die Ausrichtung?

Schematisch sieht es so aus:

Tabelle
 Zeile mit Obernavigation
  Leere Zelle
  Navigationsinhalte in Zellen (rechts ausgerichtet)
  Leere Zelle mit einem Blindgif um einen kleinen Rand zu haben
 Ende Obernavigationszeile

Unternavigationszeile

Leere Zelle

Zelle mit mit colspan die größe n-1 der Obernavigation hat
   Tabelle mit Unternavigationsleiste
    Navigationsinhalte in Zellen
    Leere Zelle mit einem Blindgif um einen kleinen Rand zu haben
    ( <td width="100%">
 <img src="/Pfad/blind.gif" width="2" height="18" hspace="0" vspace="0" border="0" alt=".">
 </td>
    )
   Ende der Tabelle
  Zellenende der colspan-Zelle

Ende der Unternavigationsleiste
Tabellenende

  1. <td width="100%">
    <img src="/Pfad/blind.gif" width="2" height="18" hspace="0" vspace="0" border="0" alt=".">
    </td>
        )

    Dein Problem habe ich nicht ganz verstanden, aber ich glaube ahnen zu können wo das Problem liegt:

    Nach deinem <td width="100%"> schreibst du den <img> erst in die nächste Zeile, dies kann dazu führen, das ein Browser diesen Zeilenwechsel auch darstellt, dies kann sich wie im IE gar nicht bemerkbar machen, oder aber wie im NN mit einem Pixeloffset.

    Darum probier einfach mal

    <td width="100%"><img src="/Pfad/blind.gif" width="2" height="18" hspace="0" vspace="0" border="0" alt="."></td>

    in einer eizigen Zeile zu schreiben.

    mfG webmonk

    1. danke aber das ist es definitiv nicht (lasse eigentlich alles in eine Zeile ausgeben.. muß es ja nur in ASP lesen können... )

      Mein Problem ist

      X=leerer farblicher Hintergrund
      Menü = Obermenüauswahl
      Unter = Untermenüauswahl

      IE zeigt:

      XXXXXXXXX Menü1 Menü2 Menü3 ... X
      XXXXXXXXX Unter1 Unter2 ...     X

      NS zeigt

      XX   Menü1     Menü2    Menü3   X
      XX   Unter1  Unter2  XXXXXXXXXXXX

      Und rückt die Untermenüs zusammen mit den Obermenüs nach vorne (am Ende ist eine große Leerzelle)

      mache ich das Blindgif am Ende weg zeigt NS

      XXXXXXXXX Menü1 Menü2 Menü3 ... X
      XXXXXXXXX Unter1  Unter2  ...

      also fast richtig bis auf andersfarbige Endzelle...

      1. sorry, aber ohne sourcecode ist eine problemhebung ein ratespiel, aber ich möchte trotzdem raten:

        <td width=100%"> ... warum "100%" ??

        mfg webmonk

        1. ohne width klappts nicht.

          habs mal grob rausgeschrieben...

          <table width="100%" border="0" cellspacing="0" cellpadding="0" align="center">
           <tr>
            <td colspan="2" align="right">
             <table width="100%" cellpadding="0" cellspacing="1" border="0">
              <tr>
               <td width="100%" bgcolor="#erste"> 
               </td>
               <td bgcolor="#zwote" valign="center" nowrap>
                 ... hier mehrere Zellen
               </td
               <td width="24" bgcolor="#zwote"><img src="/pfad/blind.gif" width="8" height="20" hspace="0" vspace="0" border="0" alt=".">
               </td>
              </tr>
              <tr>
               <td> 
               </td>
               <td colspan="zellenanzahl-1" bgcolor="#dritte" align="left">
                <table width="100%" border="0" cellspacing="0" cellpadding="3">
                 <tr>
                  <td nowrap>
                      ... mehrere Zellen ...
                  </td>
           <td width="100%"><img src="/blind.gif" width="2" height="18" hspace="0" vspace="0" border="0" alt=".">
                  </td>
                 </tr>
                </table>
               </td>
              </tr>
            </table>
           </td>
          </tr>
          </table>

          1. ohne width klappts nicht.

            habs mal grob rausgeschrieben...

            <table width="100%" border="0" cellspacing="0" cellpadding="0" align="center">
            <tr>
              <td colspan="2" align="right">
               <table width="100%" cellpadding="0" cellspacing="1" border="0">
                <tr>
                 <td width="100%" bgcolor="#erste"> 
                 </td>
                 <td bgcolor="#zwote" valign="center" nowrap>
                   ... hier mehrere Zellen
                 </td

            ===> In der Zeile darüber fehlt ">" !

            mfg webmonk

            1. nur jetzt grad beim rausschreiben passiert im Original ist es enthalten (und die ganzen stringKopf=stringKopf&"<td>" anweisungen zu durchsuchen und nru einen Tipfehler zu machen geht doch ;-) )

              1. nur jetzt grad beim rausschreiben passiert im Original ist es enthalten (und die ganzen stringKopf=stringKopf&"<td>" anweisungen zu durchsuchen und nru einen Tipfehler zu machen geht doch ;-) )

                Kein Problem!

                Hab den Fehler gefunden:

                In der 2. Zeile in der Zelle (zellen-1) erstellst Du eine Tabelle die du zu spät schließt, die Zelle mit dem transparenten Gif ist in dieser SUbtabelle, gehört aber außerhalb hin, den ansonsten, hast du in der 2. Zeile eine Zelle weniger als in der Ersten und dadurch funktioniert das im NN nicht mehr!

                Ich hoffe Du verstehst was ich meine!

                mfg webmonk!

                1. Sup!

                  Tja, mit einem HTML-Validator hätte das frittierte Gebäck das vielleicht auch gefunden ;-)
                  Woher nimmst Du die Nerven, ohne Quellcode an so "was-ist-falsch" Ratespielen zeilzunehmen?

                  Gruesse,

                  Bio

                  1. rein nach Rechnung ist es richtig...
                    Und es gibt da ein oder zwei  kleine Probleme rein für das Intranet gedachte Firmenseiten ganz zu veröffentlichen...

                    Außerhalb klappt das übrigens nicht... dann würde die Tabelle egal von welchem Browser total zerschossen.

                  2. Sup!

                    Tja, mit einem HTML-Validator hätte das frittierte Gebäck das vielleicht auch gefunden ;-)
                    Woher nimmst Du die Nerven, ohne Quellcode an so "was-ist-falsch" Ratespielen zeilzunehmen?

                    Programmiere gerade an einem Datenbank Administrationstool herum, jenseits der 15.000 Codezeilen, und das ist so ein "ratespielchen" mal eine nette Abwechslung, außerdem helfe ich jemanden.

                    Vielleicht brauche ich auch einmal Hilfe... ;-)

                    mfg webmonk

                2. nö, verstehe nicht ganz

                  in Block 1 bilde ich eine Zeile mit 1+Menü+1=n Zellen
                  in Block 2 nehem ich die erste Zelle als Start weg, habe dann n-1 Zellen im Block zur verfügung.
                  in den n-1 Zellen ist eine Table mit x Zellen (wobei x = eine Zelle oder = 20 Zellen sein kann.

                  Wo ist dann da eine zuviel?

                  <table width="100%" border="0" cellspacing="0" cellpadding="0" align="center">
                   <tr>
                    <td colspan="2" align="right">
                     <table width="100%" cellpadding="0" cellspacing="1" border="0">
                      <tr>

                  BLOCK 1
                       <td width="100%" bgcolor="#erste"> 
                       </td>
                       <td bgcolor="#zwote" valign="center" nowrap>
                         ... hier mehrere Zellen
                       </td
                       <td width="24" bgcolor="#zwote"><img src="/pfad/blind.gif" width="8" height="20" hspace="0" vspace="0" border="0" alt=".">
                       </td>
                      </tr>

                  Ende Block 1

                  Block 2

                  <tr>
                       <td> 
                       </td>
                       <td colspan="zellenanzahl-1" bgcolor="#dritte" align="left">
                        <table width="100%" border="0" cellspacing="0" cellpadding="3">
                         <tr>
                          <td nowrap>
                              ... mehrere Zellen ...
                          </td>
                   <td width="100%"><img src="/blind.gif" width="2" height="18" hspace="0" vspace="0" border="0" alt=".">
                          </td>
                         </tr>
                        </table>
                       </td>

                  Ende Block 2

                  </tr>
                    </table>
                   </td>
                  </tr>
                  </table>

                  1. nö, verstehe nicht ganz

                    in Block 1 bilde ich eine Zeile mit 1+Menü+1=n Zellen
                    in Block 2 nehem ich die erste Zelle als Start weg, habe dann n-1 Zellen im Block zur verfügung.
                    in den n-1 Zellen ist eine Table mit x Zellen (wobei x = eine Zelle oder = 20 Zellen sein kann.

                    sorry, hab mich etwas verwirrend ausgedrückt, du mußt die zelle (zellenanzahl -1) auf zellenanzahl -2 ausbessern, und das transparent gif auserhalb dieser tabelle setzen:

                    Zeile 1:
                    Zelle 1: #erste
                    Zelle 2-n: #zweite
                    Zelle n+1: #zweite

                    Zeile 2:
                    Zelle 1:  
                    Zelle 2-n; Tabelle mit was auch immer;
                    Zelle n+1; <IMG>

                    so sollte es funktionieren!

                    mfg webmonk

                    1. hm...
                      jetzt hab ich da statt dem riesigen immer noch einen sehr großen Einzug
                      die Zelle vor und nach der Tabelle mit was auch immer wird gleich groß dargestellt (bei NS) bei IE dagegen bleibt die Ausrichtung bis auf den Farbverlust der letzten Zelle gleich (okay.. das kann man ändern)

                      1. hm...
                        jetzt hab ich da statt dem riesigen immer noch einen sehr großen Einzug
                        die Zelle vor und nach der Tabelle mit was auch immer wird gleich groß dargestellt (bei NS) bei IE dagegen bleibt die Ausrichtung bis auf den Farbverlust der letzten Zelle gleich (okay.. das kann man ändern)

                        Das Problem liegt bei <td width="100%">

                        den 1. Zelle hat keine width Angabe, ist aber mit   (Leerzeichen) definiert.

                        2-n. Zelle haben alle keine width Angaben

                        n+1 Zelle hat width="100%" 100% kann natürlich nicht erreicht werden, darum wird diese Zelle so groß wie möglich dargestellt und die restlichen Zellen zusammengeschoben.

                        Hilfe: 1. Zelle lassen, 2. Zelle auf width="100%" und 3.Zelle auf width = width vom Transparent IMAGE setzen.

                        so, ich hoffe wir nähern uns dann balb einmal einem Ergebnis ;-)

                        mfg webmonk

                        1. hoffe ich auch.. will ja nciht zulange nerven.. aber...

                          nach diesen Änderungen ist der Einzug bei NS nun nur noch fast doppelt so groß wie beim IE ;-) also auch noch viel größer...

                          und die Längen der einzelnen Elemente sind  beim IE deutlich größer geworden, statt das sie normal groß bleiben und am Ende den Einzug haben...

                    2. 2ter Nebeneffeckt..
                      nun sind die Felder der zweiten Leiste ja auch zwischen den beschriebenen der ersten angeordnet...
                      Damit pumpen diese mehr auf.

                      Also statt

                      XXXXXXXXXXXXXXXX 1 2 3 x
                      xxxxxxxxxxxxxxxx a b xxx

                      kommt in IE :

                      XXXXXXXXXXXXXXXX 1 2 3 X
                      xxxxxxxxxxxxxxxx  a  b x

                      bzw. in NS:

                      XXXXXXXXXXX 1 2 3 XXXXX
                      xxxxxxxxxxx a  b  xxxxx

                      1. 2ter Nebeneffeckt..
                        nun sind die Felder der zweiten Leiste ja auch zwischen den beschriebenen der ersten angeordnet...
                        Damit pumpen diese mehr auf.

                        Also statt

                        XXXXXXXXXXXXXXXX 1 2 3 x
                        xxxxxxxxxxxxxxxx a b xxx

                        kommt in IE :

                        XXXXXXXXXXXXXXXX 1 2 3 X
                        xxxxxxxxxxxxxxxx  a  b x

                        bzw. in NS:

                        XXXXXXXXXXX 1 2 3 XXXXX
                        xxxxxxxxxxx a  b  xxxxx

                        wenn die zellen eh unter einander sein sollen, warum verwendest du dann ein colspan in der 2. zeile??

                        1. Nun..
                          eigentlich da ich nicht weiß wieviele Zellen in die 2te Zeile jeweils kommen.
                          wie gesagt es ist zum automatischen Generieren gedacht.
                          Jeder der Menüpunkte kann unterschiedlich viele Unterpukte haben.