Konvertieren absolute position, relative
Ist es möglich, zu ändern, DIV position von absolute auf relative (und von der relativen auf die absolute)?
DIV sollte weiterhin auf der gleichen Stelle.
Sind Sie Fragen, "es bleibt an der gleichen Stelle?". Wenn ja, wird es, aber relativ ist, wird es in der document flow, absolute, wird es nicht.
Ich habe absolut positionierte Elemente, die konvertiert werden soll, relativ. Das problem ist, dass ich nicht berechnen relative richtigen position (oben, Links) , also Elemente, die bleiben alle auf Ihren Plätzen.
Ich habe absolut positionierte Elemente, die konvertiert werden soll, relativ. Das problem ist, dass ich nicht berechnen relative richtigen position (oben, Links) , also Elemente, die bleiben alle auf Ihren Plätzen.
InformationsquelleAutor John | 2010-03-30
Du musst angemeldet sein, um einen Kommentar abzugeben.
ändern Sie können das Attribut mit
Zum Beispiel:
Sie könnte verwenden Sie die jQuery-Methoden
.position()
oder.offset()
zu setzen "oben" und "Links"css-Attribut aswell, so Ihr Objekt sollte an seiner position ändern
aus der relativen -> absolute.
Ich glaube nicht, dass das funktioniert Umgekehrt.
demo-code: http://jsbin.com/uvoka
kleines Beispiel der Möglichkeiten: jsbin.com/uvoka lieben Gruß, --Andy
Die vorgeschlagene "Lösung" ist NICHT die Konvertierung, nichts!!!
InformationsquelleAutor jAndy
Weil die Formatierung in den Kommentaren wird nicht funktionieren, werde ich die Lösung hier
Nicht funktioniert: element position, nach dem Wechsel zum relativen ist anders.
Aber wenn ich den gespeicherten offset und setzen Sie ihn wieder nach der Umstellung auf die relative position ist die gleiche:
dieser code ändert sich von der absoluten zur relativen??
InformationsquelleAutor John
Wenn Sie wirklich wollen, um die insgesamt für den oberen Abstand von einem element, das ein child-Elemente mit absoluten und relativen Positionen Sie können mit dieser Funktion
dies ist im Grunde der code für die Lösung gegeben durch plodder oben.
InformationsquelleAutor Garzun
prototype.js hat element.absolutize() und element.relativieren, die sehr gut funktionieren.
Das problem mit dem gehen von relativen zu absoluten ist, dass
element.offsetTop und offsetLeft
nur der offset des Elements zu seinen Eltern.
Sie Messen müssen, die cumualtive offset (d.h.
etc.)
InformationsquelleAutor plodder
Können Sie ganz einfach ändern Sie es von relativen zu absoluten mit hat es offsetLeft und offsetTop Werte wie left und top Stile.
Anders herum ist es schwieriger. Würden Sie grundsätzlich ändern, um es zu relativ und zu sehen, wo es endete, dann die Berechnung neuer offset-Werte aus dem aktuellen Versatz und die gewünschte Position.
Beachten Sie, dass bei der Positionierung relativ ist, ist das element Teil der Seite fließen und möglicherweise Auswirkungen auf andere Elemente. Wenn die position ist absolut, das element ist außerhalb der Seite fließen und nicht auf andere Elemente. Also, wenn Sie ändern zwischen absoluter und relativer Positionierung, müssen Sie möglicherweise änderungen an anderen Elementen, auch wenn Sie nicht wollen, sich zu bewegen.
InformationsquelleAutor Guffa