2009-07-13 13 views
1

Ich habe ein Floating Div mit dynamischen Inhalten drin. In der ersten Reihe brauche ich vier divs, ähnlich wie in 2., 3., 4. etc. Ich brauche vier Divs. Ich kann einem einzelnen Div eine Klasse zuweisen und es generiert automatisch den Rest der Divs. Mein Problem ist, dass ich die Min-Höhe zu einem Div festlegen kann, aber ich kann die maximale Höhe nicht festlegen, wie der Inhalt dynamisch erstellt wird. Wenn der Inhalt niedrig ist, sitzen die Divs nicht in einer geraden Reihe. Aus diesem Grund bekommen die kommenden Divs auch Probleme, wie man diese Divs anordnet?Floating div Problem

+0

Hier ist eine Vorstellung. Zeigen Sie uns einen Code, um zu demonstrieren, woran Sie arbeiten, und zeigen Sie uns auch einen Screenshot, um Ihr Problem zu demonstrieren. Bitte? –

Antwort

0

Eine Sache, die Sie tun können, ist die Höhe machen fixiert und verwenden overflow CSS-Eigenschaft auf hide den Text zu verbergen, und verwenden Sie das Attribut title den gesamten Text in einem Tooltip zu zeigen.

+0

Ich kann keine feste Höhe haben, denn wenn der Inhalt niedrig ist, wird es viele Abstände geben ... – Harry

1

Lass uns das klarstellen. Sie haben mehrere Zeilen mit 4 DIVs in jedem - nennen wir sie Zellen nur zum Spaß. Sie möchten, dass ihre Höhe bei dynamischem Inhalt über die gesamte Zeile gleich ist. Ich werde hier ein wenig aussteigen und dir vorschlagen, einen Tisch zu benutzen.

+0

Hmmmm. Aber dann wird er auch viel Abstand haben, wenn der Inhalt niedrig ist, und er will es nicht. Siehe den Kommentar zur Antwort unten. – Kirtan

+0

Ich glaube, sein Kommentar zu Ihrer Antwort bedeutete, dass wenn er eine feste Höhe * groß genug * für den längsten möglichen Inhalt in einem der divs festlegte, dann in der Situation, wenn der Inhalt in * allen divs * kürzer wird Ich habe Abstände in allen von ihnen. Was er wirklich will, ist, dass ein div (der mit dem längsten Inhalt) hoch genug ist, um seinen Inhalt ohne Abstand aufzunehmen, und alle anderen die gleiche Höhe wie dieses div (und Abstand haben). Mit anderen Worten - klassisches Tabellenverhalten. Der einzige Weg, dies ohne Tabellen zu tun, ist über JS, CSS-Lösung ist unmöglich. – ChssPly76

1

Auf die erste Zeile die neue Zeile hinzufügen clear:both;. Das wird alle divs in einer geraden Reihe machen.

div {float:left;border:1px solid #000;margin:20px;width:100px;} 
.clear_both{clear:both;} 
.one {height:100px;} 
.two {height:50px;} 
.three {height:200px;} 
.four {height:150px;} 

<div class="one"></div> 
<div class="two"></div> 
<div class="three"></div> 
<div class="four"></div> 
<div class="two clear_both"></div> 
<div class="three"></div> 
<div class="four"></div> 
<div class="one"></div> 
+0

Ich glaube nicht, dass das ** Webdeveloperut ** fragt, obwohl seine Frage nicht genau ist. Aber da er von div-Höhen spricht, nehme ich seine "straight row" -Bedeutung so auf, dass "alle divs in der gleichen Reihe gleich groß sind". – ChssPly76

Verwandte Themen