2014-06-18 12 views
10

Bitte beachten Sie JSFiddle folgen:Bootstrap: CSS - Höhe der Listengruppen Artikel

http://jsfiddle.net/7W2r4/12/

Wie Sie vielleicht bemerkt: die list-group-item vollständig kollabiert ist. Und ich kann nicht scheinen, es automatisch einzustellen. (z. B.)

noch, wenn ich die CSS-Regel liefern: height:20px;, dann wird die Zeilengröße angepasst. Wie kann ich die Höhe eines Listengruppenelements an die Größe des Inhalts anpassen?

Vielen Dank für Ihre Zeit.

Antwort

23

Sie overflow:hidden hinzufügen oder andere "clear-fix" Code zur Liste Gruppenposten wenn Sie die Floats innerhalb der Artikel behalten müssen. Schwebekörper verursachen immer Probleme mit der Höhe der schwebenden Gegenstände. Wenn Sie sie löschen oder den Überlauf einstellen, wird die Höhe korrekt berechnet. Weitere Informationen hierzu finden Sie unter CSS: Floating divs have 0 height.

.list-group-item 
{ 
    overflow:hidden; 
    position: relative; 
    display: block; 
    padding: 10px 15px; 
    margin-bottom: -1px; 
    background-color: #fff; 
    border: 1px solid #ddd; 
} 

Da Sie Bootstrap verwenden könnten Sie die class="clearfix" hinzufügen für die list-group-items

+1

Oh ich war mir nicht bewusst, dass die Einflüsse von Schwimmern so groß waren. Und ich wusste nie, dass sie Einfluss auf die Höhe hatten! Danke für deine Erkundung. – User999999

+2

Ich habe einen Link zu einer anderen Frage hinzugefügt, die diesen Effekt erklärt. Es gibt viele Möglichkeiten, dies weniger zu einem Problem zu machen. Es gibt verschiedene Ansätze, um Floats zu löschen. Das Älteste besteht darin, nach dem Container mit den Floats ein '
' 'hinzuzufügen. Es ist jetzt verpönt, da es nicht semantisch ist. Die meisten CSS-Frameworks enthalten eine '.clearfix'- oder ähnlich benannte Regel, die dies behebt. –

+1

für mich zu skalieren entscheidend war 'Überlauf: versteckt; ' – andi

3

Entfernen der float: left; von .itemDescription Ihr Problem beheben fiddle, so dass der komplette Stil für .itemDescription sein wird:

.itemDescription 
{ 
    width: 30%; 
    vertical-align: middle; 
    height: 100%; 
    line-height:100%; 
    vertical-align: middle; 
} 
+1

Ihr Recht auf HTML! Aber warum hat ein {float: left} Einfluss auf die Höhe? – User999999

+4

@svranken: vielleicht hilft das Durchlesen dieses Artikels: http://www.w3.org/wiki/Floats_and_clearing – bluelDe

+1

Floating Element Höhen werden nicht in der Berechnung der Elternhöhe von Entwurf verwendet, die Begründung dafür bin ich nicht Klar, ich glaube daran, weil sie "aus dem Fluss des Dokuments herausgeholt" werden. Sie können veranlassen, dass das übergeordnete Element das Floating-Element berücksichtigt, indem Sie [floating] (https://developer.mozilla.org/en-US/docs/Web/CSS/float#Clearing_floats) den Float berücksichtigen oder den nicht benötigten Float in Ihrem Fall entfernen . – Last1Here