Marc Nilius: clear will nicht clearen

Hallo!

ich versuche gerade, ein Formular schön zu formatieren. Das gelingt mir aber nicht.
Unter http://public.pixelundprint.de habe ich das Dilemma mal hinkopiert. Das Input-Feld "E-Mail-Adresse" sollte eigentlich in der zweiten Zeile stehen, u.a. deswegen weil vor ihm ein clear:both; steht.

Im IE6, IE7 und scheinbar auch im FF2 ist das auch so, in meinem FF1.5 aber nicht und das lässt mir keine Ruhe.

Was mache ich falsch?

Viele Grüße,
Marc

  1. Versuche es so

    clear: both !important;

    Gruß, Schnatz

    1. Hallo!

      Versuche es so

      clear: both !important;

      hat leide rnicht funktioniert, bzw. keine Besserung gebracht.

      Viele Gruesse,
      Marc Nilius

      1. Hallo!

        clear: both !important;
        hat leide rnicht funktioniert, bzw. keine Besserung gebracht.

        Ich habe keine Leerstelle vor dem Ausrufezeichen. Wollte mal eben in SELFHTML nachsehen, ob das Bedingung ist. Aber !important oder important kommt nicht vor.

        Probiere es einfach:
        clear: both!important;

        Kalle

        1. Hallo,

          clear: both !important;
          hat leide rnicht funktioniert, bzw. keine Besserung gebracht.

          Ich habe keine Leerstelle vor dem Ausrufezeichen. Wollte mal eben in SELFHTML nachsehen, ob das Bedingung ist. Aber !important oder important kommt nicht vor.

          http://de.selfhtml.org/css/formate/kaskade.htm#ursprung@title=doch!

          Probiere es einfach:
          clear: both!important;

          Ist aber falsch.

          mfg. Daniel

      2. Hallo Marc,

        Versuche es so

        clear: both !important;

        hat leide rnicht funktioniert, bzw. keine Besserung gebracht.

        verändere mal die Größe des Anzeigefensters, dann wirst du sehen, was sich tut ;)

        Ich vermute es hat folgenden Grund: Du hast dem DIV, was das floaten beendet, eine Größe von 1x1 Pixel gegeben. Es sitzt also rechts neben dem Feld für den Vornamen.
        Alle Elemente, die danach kommen, fangen wieder DARUNTER an - und genau das tut auch das eMail-Feld: Wenn du genau hinsiehst, dann sitzt es ein paar Pixel zu tief.

        Ich würde entweder dem Feld mit der eMail statt einem float:left ein clear:both verpassen, oder vielleicht reicht es, wenn das DIV mit dem clear:both keine Größenangaben hat?

        Gruß
        Chris

        Viele Gruesse,
        Marc Nilius

        1. Hallo zusammen!

          Jetzt klappts, aber nur , weil ich das System ein wenig umgebaut habe. Das eigentlich eProblem konnte ich nicht lösen. Aber seis drum.

          Das clera-div in seiner Größe nicht zu beschränken hatte übrigens keinen Erfolg gebracht.

          Trotzdem herzlichen Dank an alle!

          Viele Gruesse,
          Marc

  2. Hallo Marc,

    Unter http://public.pixelundprint.de habe ich das Dilemma mal hinkopiert. Das Input-Feld "E-Mail-Adresse" sollte eigentlich in der zweiten Zeile stehen, u.a. deswegen weil vor ihm ein clear:both; steht.

    Im IE6, IE7 und scheinbar auch im FF2 ist das auch so, in meinem FF1.5 aber nicht und das lässt mir keine Ruhe.

    Was mache ich falsch?

    Du gar nichts. Das ist ein blöder Bug im Gecko 1.8.0 Zweig. In fieldsets funktioniert clear einfach nicht (richtig).
    Bug 309550 - clear inside fieldset doesn't work
    https://bugzilla.mozilla.org/show_bug.cgi?id=309550

    Der Fehler ist inzwischen behoben, aber eben nur in den noch nicht ganz fertigen Browsern die auf 1.8.1 basieren (z.B. FF 2.0 und Seamonkey 1.1) und allem was danach kommt. Für die offiziell aktuellen Geckos musst du drumrum arbeiten, eine Lösung hast du ja schon gefunden.

    Gruß
    Susanne