C.S.: <form> Blöcke ohne Umbruch

Hi
wie verhindere ich, dass der bei

.
.
.
<td>
  <form action="profil.php">
  <input type="submit" value="Profil">
  </form>

<form action="javascript:window.back()">
   <input type="submit" value="zurück">
  </form>
</td>
.
.
.

die beiden Buttons untereinander setzt? Ich will, dass die nebeneinander in eine Zeile gesetzt werden. Wären die in einem <form> block wäre das ja kein Problem, aber ich weiß nicht, wie ich die beiden Buttons in einem <form> Block unterbekommen soll. Wenn ich die beidenn Blöcke in eine Tabelle packe gehts zwar, aber der Abstand nach oben und unten ist mir dann zu groß, auch wenn ich cellpadding und -spacing auf 0 setze.
Gibt es da eine elegante Lösung?
Gruß, C.S.

  1. Hallo,

    ich bin mit nicht sicher aber evtl. kann man die Elemente auch mit css dazu bringen nicht umzubrechen, also style="float:left;".

    1. Hi.

      Hab einen Tip:

      css
      ----------------------------------------------------------
      style="display:inline;margin:0px;float:left;clear:left;"

      somit dürfte es genau das sein, was du wolltest.

      Die Margin-Angabe ist optional. Doch im IE hab ichs oft erlebt, dass der eine Zeile extra als Margin-Bottom bei Forms hinpackt.

      MFG
      Griever

      1. Danke,
        das hat wirklich geholfen. Hatte zwar vorher schon nach einem CSS Befehl gesucht, aber nichts gefunden...
        Gruß, C.S.

        1. Hello out there!

          Hatte zwar vorher schon nach einem CSS Befehl gesucht, aber nichts gefunden...

          Wirst du auch in Zukunft nicht. Es gibt keine „CSS-Befehle“; es gibt „Eigenschaften“.

          See ya up the road,
          Gunnar

          --
          “Remember, in the end, nobody wins unless everybody wins.” (Bruce Springsteen)
      2. Hallo

        style="display:inline;margin:0px;float:left;clear:left;"

        Das mag zwar, wegen des floats aussehen, wie gewollt, ist aber doppelt gemoppelt. Mit der Angabe von float:left; machst du aus dem <form>, dass du eben zum Inlineelement gemacht hast, automatisch wieder ein Blockelement.

        Die Angabe von display:inline; kann also wegbleiben.

        Tschö, Auge

        --
        Die Musik drückt aus, was nicht gesagt werden kann und worüber es unmöglich ist zu schweigen.
        (Victor Hugo)
        Veranstaltungsdatenbank Vdb 0.1
  2. Hallo,

    wie verhindere ich, dass der bei
    [...]
    die beiden Buttons untereinander setzt?

    indem du die beiden forms, die von Haus aus Blockelemente sind, zu Inline-Elementen umdefinierst.

    <td>
      <form action="profil.php">
      <input type="submit" value="Profil">
      </form>

    <form action="javascript:window.back()">
       <input type="submit" value="zurück">
      </form>
    </td>

    Ist denn die Tabelle wirklich nötig?
    Und auch das hier ...

    <form action="javascript:window.back()">

    ist irgendwie Unsinn.
    Erstens ist es per se überflüssig, den "Back"-Button, den sowieso jeder Browser hat, nochmal zu duplizieren, zumal der nachgemachte nur bei aktiviertem Javascript funktioniert und die Methode back() nicht zum window-Objekt gehört, sondern zum history-Objekt.
    Zweitens ist es sinnvoller, wenn du schon nicht drauf verzichten willst, den "Back"-Button ohne ein Formular drumherum einzeln zu setzen und die Funktion über einen onclick-Handler auszulösen. Damit die Besucher ohne Javascript nicht durch einen funktionslosen Button irritiert werden, gib ihn am besten nur per JS aus:

    <script type="text/javascript">
    document.write("<button onclick='history.back()'>Zurück</button>";
    </script>

    Gibt es da eine elegante Lösung?

    Es könnte sich für dich lohnen, mal ein paar Gedanken in CSS zu investieren.

    Schönen Tag noch,
     Martin

    --
    Es gibt Dinge, die sind sooo falsch, dass nicht einmal das Gegenteil stimmt.
    1. hi,

      Es könnte sich für dich lohnen, mal ein paar Gedanken in CSS zu investieren.

      Dass damit aber, wie bspw. von Cheatah oft gefordert, erst mal abgewartet wird, bis eine sinnvolle HTML-Struktur vorhanden ist, dürfte hier mal wieder besonders anzuraten sein.

      gruß,
      wahsaga

      --
      /voodoo.css:
      #GeorgeWBush { position:absolute; bottom:-6ft; }
    2. Ja,
      Gedanken in CSS hab ich schon investiert, aber ich war zu doof, um da was gescheites zu finden. Mit JS hab ich mich noch nicht auseinander gesetzt, daher vielen Dank für deinen Tipp, das ist jetzt auch ein Anreiz für mich, mich damit mehr zu beschäftigen.
      Gruß, C.S.

  3. Moin!

    die beiden Buttons untereinander setzt? Ich will, dass die nebeneinander in eine Zeile gesetzt werden.

    Erstens: Buttons müssen nicht in Formulare gepackt werden.

    Zweitens: Wenn der eine Button eine schlichte weitere Seite aufrufen soll, und der andere Button eine Javascript-Methode, kann man beide Buttons auch problemlos in EIN Formular packen, und den Javascript-Button dann eben nicht als submit-Button, sondern als button-Button definieren - dann stehen sie auch nebeneinander.

    Drittens: Alternativ zu Buttons und Formularen kann man auch Links benutzen und ihnen Button-Optik verleihen.

    - Sven Rautenberg

    --
    My sssignature, my preciousssss!