Ich habe einen Container div mit einem festen width
und height
mit overflow: hidden
.
Ich möchte eine horizontale Reihe von float: left divs in diesem Container. Divs, die nach links schweben, werden natürlich auf die 'Linie' unten gedrückt, nachdem sie die rechte Grenze ihres Elternteils gelesen haben. Dies wird auch dann passieren, wenn height
der Elternteil dies nicht zulassen sollte. So sieht das aus:
! [Falsch] [1] - Bild-Shack-Bild entfernt, das durch eine Anzeige ersetzt wurde
Wie es aussehen soll:
! [Rechts] [2] - Bild-Shack-Bild entfernt, das durch eine Anzeige ersetzt wurde
Hinweis: Der gewünschte Effekt kann durch Verwendung von Inline-Elementen & erzielt werden white-space: no-wrap
(so habe ich es im gezeigten Bild gemacht). Dies ist jedoch nicht gut für mich (aus Gründen, die zu lang sind, um es hier zu erklären), da die untergeordneten Divs Elemente auf Blockebene sein müssen.
Antworten:
Sie können ein inneres Div in den Container legen, das breit genug ist, um alle schwebenden Divs aufzunehmen.
quelle
width: 200%;
und die untergeordneten Elemente sind jeweilswidth: 50%;
. Ich kann danntransform: translateX(n%);
auf dem Container einen Karusselleffekt emulieren, solange ich einen übergeordneten Container mitoverflow: hidden;
style="overflow:hidden"
Für Elterndiv
undstyle="float: left"
für alle Kinder istdivs
es wichtig, diedivs
Ausrichtung für alte Browser wie IE7 und darunter horizontal vorzunehmen .Für moderne Browser können Sie
style="display: table-cell"
für alle Kinder verwendendivs
und es würde horizontal richtig rendern.quelle
Dies scheint nahe an dem zu liegen, was Sie wollen:
quelle
Sie können die
clip
Eigenschaft verwenden:Beachten Sie die
position: absolute
undoverflow: hidden
benötigt, umclip
zur Arbeit zu kommen.quelle
Float: left, display: inline-block kann die Elemente nicht horizontal ausrichten, wenn sie die Breite des Containers überschreiten.
Es ist wichtig zu beachten, dass der Container nicht umbrochen werden sollte, wenn die Elemente horizontal angezeigt werden MÜSSEN:
white-space: nowrap
quelle
Sie können jetzt die CSS-Flexbox verwenden, um Divs bei Bedarf horizontal und vertikal auszurichten. Die allgemeine Formel lautet wie folgt
quelle
Schwebe sie nach links. Zumindest in Chrome benötigen Sie keinen Wrapper
id="container"
, im Beispiel von LucaM.quelle
Sie können so etwas tun:
quelle