Daniel Muskatewitz: Tabelle ausrichten

Hallo,
wie kann ich einer Tabelle befehlen sich nicht zu vergrößern?

ich habe ein Script mit dem ich in der navigationseiste per onmouseOver ein Bild verändern kann

Beispiel :

(hier das bild in einer Tabbele) (hier die andere "hier kann ich mit onmouseOver das bild in der anderen td Spalte ändern")

aber durch das srcipt vergrößert sich das Bild oder die Tabbele um ein paar Pixel und das stört mein layout.

Kann man das irgendwie verhindern?

Danke im Voraus (weil ich weiß das ich alle da draußen schlau und erfahren seid =)

Danie

  1. Die Table dürfte sich nicht verändern, auser wenn das bild ein paar pixel grösser ist. Das kann man nur verhintern ihn dem man das bild neu zusammen schneidet oder im bild code die befehle

    width="x" height="x"

    benuzt.

    1. Mache ich ja =) trozdem hab den Code drinne (liegt joa vielleicht doch daran) :

      (kommt aber nicht in den Head Abschnitt sonder in den Body abschnitt)

      <script language="JavaScript">

      <!--
        // Bildwechsler
         menu_inactive = new Image();
         menu_inactive.src = "mnu_inactive.gif"; /* Standard-Grafik */
         menu_active = new Image();
         menu_active.src = "
      mnu_active.gif"; /* Highlight-Grafik */

      function change_image(image_name,image_object){
          window.document.images[image_name].src = image_object.src;
         }

      // Link Funktion
         function link_to(target){
          top.location.href = target;
         }

      //-->

      </script>

      So das ist joa eigentlich klar, (link funktion spielt joa eigentlich keine Rolle)

      so dann habe ich die td Spalten :

      <td width="13"><img
                              onmouseover="change_image('register',menu_active)"
                              onclick="link_to('die URL')"
                              onmouseout="change_image('register',menu_inactive)"
                              src="mnu_inactive.gif"
                              name="register" width="13" height="19"></td>
                            <td onmouseover="change_image('register',menu_active)"
                            onclick="link_to('wieda die URL')"
                            onmouseout="change_image('register',menu_inactive)"
                            bgColor="#003366">

      (kannst ja mal ausprobieren. bei mir ist da aufjedenfall etwas größer, meine Bild dateien stimmem, cellspacing und cellpadding sind auch auf null, border="0" alles richtig, ich weiß nicht worann es liegt)

      ..:: Trozdem Danke

    2. width="x" height="x"

      Wie schon beschrieben: Diese Attribute sollte man hier nicht verwenden. Bei sowas immer CSS nehmen!

      Heiner

  2. Hallo,

    normalerweise bestimmst du die Breite der Tabelle durch <table width=..> Bei einigen Browsern wird die Tabelle jedoch automatisch vergrößert, wenn die Inhalte sonst nicht hineinpassen. Dir bleiben 2 Lösungen:

    1. Das onMouseOver-Bild sollte genausogroß sein, wie das ursprüngliche
    2. Du könntest mit einer transparenten Grafik (Höhe 1px) den Rest der Tabelle zwingend ausfüllen, dann kann die Tabelle theoretisch nicht vergrößert werden. Das allerdings ohne Gewähr, weil es sein kann, dass die tabelle auch über den fensterrand vergrößert wird (dann mit scrollbalken)

    Ich würde auf jeden fall die erste möglichkeit nutzen. Eigentlich sollten MouseOver-Effekte sowieso nur mit Platzidentischen Elementen verwendet werden, weil es sonst zu Störungen kommt (es sei denn, diese sind beabsichtigt).

    Gruß,
      S.Goertz

    1. Hallo,

      normalerweise bestimmst du die Breite der Tabelle durch <table width=..>

      Nein! Das ist alter Stil. Man sollte immer auf Trennung von Inhalt (html) und Aussehen (CSS) einer Seite achten!

      Die Breite einer Tabelle bestimmt man ausschließlich mit CSS!

      z. B. <table style="width:100px;">

      Heiner