2014-10-10 5 views
43

Ich habe folgende Geige:Firefox float bug? Wie bekomme ich mein Float: direkt auf der gleichen Linie?

http://jsfiddle.net/q05n5v4c/2/

In Chrome, es macht einfach gut. Der Chevron ist auf der rechten Seite.

Allerdings, in Firefox, lässt es den Chevron 1 Zeile unten fallen.

Ich habe google gesucht und mehrere Posts über diesen Bug gefunden, aber keiner der Vorschläge hat geholfen.

Irgendwelche CSS-Experten da draußen, die mir sagen können, was ich falsch mache?

Html:

<div class="btn-group"> 
    <button data-toggle="dropdown" 
      class="btn btn-default dropdown-toggle" 
      style="width: 400px;text-align: left;"> 

     Checked option 

     <span class="glyphicon glyphicon-chevron-down" 
       style='float: right;'></span> 
    </button> 
</div> 

Antwort

82

Ändern der Reihenfolge des Schwimmers, legte es vor dem Text wie folgt aus:

<div class="btn-group"> 
    <button data-toggle="dropdown" class="btn btn-default dropdown-toggle"style="width: 400px;text-align: left;">   
    <span class="glyphicon glyphicon-chevron-down" style='float: right;'></span> 
    Checked option 
    </button> 
</div> 

http://jsfiddle.net/q05n5v4c/3/

+1

Dies behebt das Problem. Danke für all die anderen Antworten. – Scottie

+8

Das hat funktioniert, aber warum löst das das Problem? Was ist der Fehler in FF, der float verursacht: richtig, das zu tun? –

+8

es ist nicht nur ein FF-Problem. So funktioniert Floats. Wenn der Float an zweiter Stelle steht, muss er nach dem vorherigen Element beginnen, das bereits eine Höhe hat, also beginnt es niedriger – scooterlord

-3

Hier ist eine weitere Lösung:

Geben Sie Ihrem Span-Tag Stil wie folgt.

+0

Ich weiß nicht, warum dies keine Antwort ist, habe ich immer links und das hat viele Probleme, aber die Verwendung von rechts mit abcluute Position ist wirklich hilfreich thanx Mann. –

49

Es ist wie die Eigenschaft scheint white-space ist die Ursache des Problems. Mit der Klasse btn diese Eigenschaft:

white-space: nowrap

Wenn Sie diese Eigenschaft ändern funktioniert:

.btn { 
    white-space:normal 
} 

Überprüfen Sie die Demo Fiddle

+3

Sie haben meinen Tag gerettet :) –

+1

Vielen Dank! Das war sehr hilfreich, obwohl ich nicht die gleichen Klassen verwendet habe. Die, die ich benutzt habe, hatten dieses White-Space: Nowrap Set aber! –

+0

Gald hilft U mate @ShaaradDalvi – DaniP

3

Wenn Sie don Möchten Sie die Reihenfolge Ihrer Elemente nicht ändern, könnten Sie das erste Element float: left;.

+0

Das hat am Besten für mich funktioniert - danke! –