Wie platziere ich ein Div unter einem anderen Div?

Lesezeit: 2 Minuten

Benutzer-Avatar
ram

Ich habe ein #slider div mit einem Bild. Danach habe ich eine #content div mit Text. Ich habe versucht position:relative also denke ich, dass es nach dem vorherigen div kommen sollte, meine ich #slider aber hier kommt es nicht so.

Was ist hier das Problem? Wie kann man es überwinden?

HTML

<div id="slider">
    <img src="http://oi43.tinypic.com/25k319l.jpg"/>
</div>
<div id="content">
    <div id="text">
        sample text
    </div>
</div>

CSS

#slider {
    position:absolute;
    left:0;
    height:400px;
}
#slider img {
    width:100%;
}

#content {
    position:relative;
}

#content #text {
    position:relative;
    width:950px;
    height:215px;
    color:red;
}

JSFIDDLE

  • Warum hast du die position:absolute auf dem #slider? Das ist die Ursache Ihres Problems.

    – Joseph

    12. Oktober 2013 um 19:35 Uhr

  • Oh, meinst du damit, dass #content nur die Position relativ und statisch berücksichtigt? Hab ich recht?

    – rram

    12. Oktober 2013 um 19:41 Uhr

  • Wenn Ihr #slider auf position:absolute eingestellt ist, wird er aus dem Dokumentenfluss herausgeführt. Also wird alles unter diesem Tag nach oben geschoben. Sie müssen also entweder position:absolute entfernen oder einen oberen Rand hinzufügen zum #Inhalt auf die gleiche Höhe wie der #Schieberegler mit einigen zusätzlichen Pixeln für den Abstand zwischen den #Schiebereglern

    – Jonathan Marzullo

    12. Oktober 2013 um 19:47 Uhr

Benutzer-Avatar
Alain1405

Sie haben eingestellt #slider wie absolute, was bedeutet, dass es “relativ zum nächsten positionierten Vorfahren positioniert ist” (verwirrend, oder?). In der Zwischenzeit, #content div wird relativ platziert, was “relativ zu seiner normalen Position” bedeutet. Die Position der 2 Divs steht also in keinem Zusammenhang.

Sie können über die CSS-Positionierung lesen hier

Wenn du beides einstellst relativewerden die Divs nacheinander angezeigt, wie hier gezeigt:

#slider {
    position:relative;
    left:0;
    height:400px;

    border-style:solid;
    border-width:5px;
}
#slider img {
    width:100%;
}

#content {
    position:relative;
}

#content #text {
    position:relative;
    width:950px;
    height:215px;
    color:red;
}

http://jsfiddle.net/uorgj4e1/

  • Danke ändern Sie Ihre Geige

    – rram

    12. Oktober 2013 um 19:50 Uhr

  • jsfiddle aktualisiert und verbessert! Ich wusste nicht, dass ich auf Update klicken musste.

    – Alain1405

    12. Oktober 2013 um 20:05 Uhr

Benutzer-Avatar
Jonathan Marzullo

was ist mit dem ändern Position: relativ auf Ihrem #Inhalt #Text div zu Position: absolut

#content #text {
   position:absolute;
   width:950px;
   height:215px;
   color:red;
}

http://jsfiddle.net/CaZY7/12/

Dann können Sie die CSS-Eigenschaften verwenden links und oben um innerhalb des #content div zu positionieren

  • Nein, der rote Text sollte nach dem Bild kommen

    – rram

    12. Oktober 2013 um 19:41 Uhr

  • Meinst du oben auf gestapelt .. oder nach dem Bild, das es unten macht?

    – Jonathan Marzullo

    12. Oktober 2013 um 19:42 Uhr

1130370cookie-checkWie platziere ich ein Div unter einem anderen Div?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy