Ich arbeite an einem Projekt mit viel CSS. Der Kunde möchte auf der Homepage ein Rasterlayout haben, in dem er UI-Komponenten per Drag and Drop neu anordnen kann. Diese UI-Komponenten können unterschiedliche Größen haben: 1x1, 2x2 und 3x3. Wenn ich ein UI-Element an der gewünschten neuen Position ablege, sollte es die anderen Komponenten beiseite schieben. Eventuelle Löcher sollten mit 1x1 Komponenten gefüllt werden.Wie erstellt man ein anpassbares, dynamisches Rasterlayout mit CSS und JavaScript?
- Bevor ich
- Drop die Komponente in der Mitte, die beiden 1x1-Komponenten bilden Raum und passen rund um die 2x2
Beachten Sie, dass die Größe des Gitters nicht auf 8 1x1 beschränkt ist, aber die Höhe sowie die Breite des Gitters sollte möglich sein, zu erweitern und kleiner zu machen.
Ich werde lieber nicht Tabellen verwenden, aber ich bin offen für Vorschläge. Gerade jetzt habe ich Inline-Block-Divs verwendet, die ich per Drag & Drop verschieben kann, um die jQuery-DOM-Objekte zu wechseln. Der Effekt ist nicht ganz was der Kunde will: How it is now
lesen, wenn Sie einen Block erstellen und legen Sie es durch Fallenlassen es sollte auch eine 'div.floatstop' zu platzieren, so dass Ihre Javascript wird diese finden 'div.floatstops' und wenn du deinen Block davor platzierst - wird er in der Nachbarschaft platziert oder wenn er nach dem Floatstop unter den bereits platzierten Block –
fällt, werde ich diese Methode testen und mit dem Ergebnis zurückkommen. – Borgen
Ich bekomme es nicht zur Arbeit. Könnten Sie ein Beispiel für jsFiddle geben? – Borgen