2009-06-23 10 views
0

Gibt es eine Möglichkeit, ein Div in Stücke zu zerlegen, indem JavaScript oder CSS verwendet wird. Ich habe eine lange div mit Inhalten drin. Ich muss das div entsprechend einer bestimmten Höhe teilen und jede Abteilung als einen getrennten Block zeigen. Was ist der einfachste Weg, dies zu erreichen?Ein Div-Element teilen

Angenommen, die Höhe des Hauptdiv ist 1500px. Ich muss das Div in 3 Teile mit einer Höhe von 500px teilen.

Wenn die Höhe des div 1600px ist, sollte es in 4 Teile aufgeteilt werden. Erste 3 mit einer Höhe von jeweils 500px und die letzte mit einer Höhe von 100px.

+0

Bitte poste den Code für das betreffende div und verlinke auf die Seite wo wir es sehen können. –

Antwort

-1

Sie können etwas einrichten, um die Höhe des Elements abzufragen und dann 500px Divs aus dem enthaltenden div hinzufügen oder entfernen.

Hier ist ein Beispiel dafür, wie die Höhe des div zu erhalten, die alle 5 Sekunden Überprüfung wird auch weiterhin:

in einem neuen div
<script type="text/javascript"> 
    function checkDiv() { 
     alert(document.getElementById('FormBody').offsetHeight); 
     setTimeout(checkDiv, 5000); 
    } 
    setTimeout(checkDiv, 5000); 
</script> 

Der nächste Schritt ist appendChild auf ‚FormBody‘ zu nennen hinzufügen die Verwendung von DOM.

0

Ein div kann nicht in einzelne Stücke geschnitten werden. Es kann gestylt werden, um bestimmte Höhe und Breite zu haben.

+0

Wie kann ich den Stil anwenden? Ich habe die Clip-Eigenschaft verwendet. Gibt es noch eine Alternative? – rahul

+0

können Sie style = "Höhe: 200px; Breite: 200px; Überlauf: versteckt;" –

+0

Aber ich muss den restlichen Text im zweiten div und so weiter zeigen. – rahul

1

Etwas seltsam, Ihre Frage.

Was bestimmt die ursprüngliche Höhe des div, wenn es nicht Ihr Code ist? Die Größe des Inhalts?

Sie konnte dynamisch die Größe des div Umfrage mit Hilfe von Javascript, dann zusätzliche divs erstellen und sie hinter anhängen, dann (ich nehme an) aufgeteilt Ihre Inhalte über die divs (von einigen Hacky Faustregel), aber wenn Sie werden auf diese Art von Längen gehen, warum nicht im Voraus auf dem Server tun? Vor allem wie auf dem Client müssen Sie warten, bis der Browser das Rendern zum ersten Mal beendet, um die Höhe berechnen zu können (ich stelle mir vor), so dass es wahrscheinlich einige sehr unästhetische Effekte geben würde.

+0

Ich brauche den Browser, um den Inhalt meines Inhalts zu beenden, weil ich nach dem Laden des Inhalts nur die Anzahl der Divs berechnen kann, in die sich mein Inhalt erstreckt. – rahul

+0

Und wenn dein Inhalt Bilder enthält, können sie immer in "div-große" Stücke geschnitten werden? Und was passiert in verschiedenen Browsern? Und was passiert, wenn ein Nutzer auf der Seite "zoomt"? – Benjol

+0

Alles, was im Hauptdiv angezeigt wird, wird in einzelne Stücke geschnitten. – rahul