2017-01-22 2 views
0

Wenn Sie mehrere Divs mit derselben Klasse haben, die vertikal aufeinander gestapelt sind. Wie kommt es, wenn man die Position auf relativ setzt und die Spitze versetzt, um nur 200px zu sagen, verschiebt man die erste div um 200px. Der Rest der divs (die unter der gleichen Klasse) sind derzeit durch 200pxRelative Positionierung mehrerer Divs Gleiche Klasse

.question { 
    margin: 120px auto; 
    text-align: center; 
    position: relative; 
    top: 200px; 
} 
nach unten gedrückt bekommen

Die Margen auf allen divs in der „Frage“ Klasse respektiert werden, aber die von 200px Offset-Position gilt nur für die erstes div mit der Frageklasse. Warum?

Antwort

1

Ich denke, hier ist ein kleines Missverständnis. Tatsächlich sind alle divs um 200px versetzt, aber sie sind relativ zu ihrer ursprünglichen Position versetzt, nicht relativ zu den anderen Entwicklern mit der question Klasse.

Denken Sie darüber nach: Sie haben einen Container mit zwei question Divs innen. Der erste davon befindet sich 200px unter der Oberseite des Containers. Die zweite Position liegt 200px unterhalb der Stelle, an der sie normalerweise positioniert worden wäre. Sie wäre genau unter der ersten dund nicht 200px darunter (sonst wäre sie insgesamt> 400px unter ihrer ursprünglichen Position).

Ich machte hier ein Beispiel, für Sie zu sehen, was ich meine. Beachten Sie, dass das dritte Div immer noch dort ist, wo es an seiner ursprünglichen Position gewesen wäre.

https://jsfiddle.net/u0sxtgz6/1/

Was die Marge - das sieht anders aus, weil es die div wegdrückt aus, was vorher war, so kann es relativ sein Elemente, die Geschwister und ist nicht notwendigerweise in Bezug auf seine eigene Ausgangsposition.

+0

Natürlich, wenn es nur das erste div war, das um 200px verschoben wurde, würde es sich mit dem zweiten überlappen. Vielen Dank –

+0

@SirSmiles Keine Sorgen! Persönlich verwende ich normalerweise "margin-top" statt "top", besonders bei relativ positionierten Elementen, es sei denn, es gibt einen Grund, dies nicht zu tun. Macht es einfacher zu wissen, wie viel Platz du zwischen Elementen bekommen wirst. – SharkofMirkwood

Verwandte Themen