Wie wird automatisch eine Seitennummer zu allen internen Links auf der HTML-Seite hinzugefügt?

8

Im Druckmodus möchte ich solche Links rendern:

%Vor%

so:

%Vor%

(Angenommen, die Zielseite befindet sich auf der 11. Seite in der Druckvorschau).

Es ist möglich, die Seitenzahl mit Hilfe von Leistungsindikatoren zum Seitenfuß mit reinem CSS hinzuzufügen, aber könnte ich dies auf eine "wie ich es möchte" Art und Weise verwenden?

Die Lösung muss nicht browserübergreifend sein (FF / Chrome ist genug), CSS / Javascript-Tricks sind erlaubt.

    
Tomasz 28.08.2012, 15:18
quelle

2 Antworten

3

Wie ich in meinem Blogbeitrag geschrieben habe " Webseiten drucken ", Drucken Webseiten sind in einem traurigen Zustand.

Wenn Sie nur einen (einspaltigen) Text ohne Bilder und Tabellen drucken, ist es schon schwer genug, einen Ausdruck zu bekommen, der dem Bildschirminhalt zumindest etwas ähnelt (ja, ich übertreibe hier aber nicht viel).

Der beste Browser zum Drucken ist derzeit noch, seit etwa einem Jahrzehnt, Opera. Alle anderen Browser saugen mehr oder weniger.

CSS könnte viel helfen, aber kein Browser implementiert die notwendigen Teile. Weitere Informationen finden Sie unter Zielzähler im Modul Generierte Inhalte für Seitenmedien - das würde genau das tun, was Sie brauchen.

Okay, nachdem Sie die Tirade aus dem Weg geräumt haben, sind hier einige Hindernisse, die Sie lösen müssen:

Die Seitennummern beginnen sich zu verschieben, sobald Sie mit dem Hinzufügen von Tests zu bestehenden Links beginnen. Also wenn du "blabla (Seite # 12)" schreibst, wird das wahrscheinlich # 13 sein, sobald du da bist.

Um wissen zu können, was auf welcher Seite geht, müssen Sie die Webseite selbst in Seiten aufteilen. Wenn Sie hauptsächlich Text haben, ist das nicht besonders schwer: Erstellen Sie einfach ein div pro Seite, stellen Sie sicher, dass der Browser es nicht über einen Seitenumbruch druckt (viel Glück damit :-() und verschieben Sie dann DOM Elemente in die div s, bis sie auf eine Seite passen ... wenn Sie herausfinden können, wie groß die Seitengröße ist.

Um das Verschiebungsproblem zu vermeiden, fügen Sie allen Links "(Seite # 0000)" hinzu, um sicherzustellen, dass sie genügend Platz einnehmen. Später werden sie durch kürzere Texte ersetzt, so dass Seiten mit vielen Links unten etwas leeren Platz haben können, aber das ist besser als die Alternativen.

Sie sollten in etwa sechs Monaten so etwas schreiben (und debuggen können) ...

Deshalb verwendet jeder eine Rendering-Engine auf dem Server, die HTML- und, sagen wir, PDF-Ausgaben erzeugen kann. PDF ermöglicht Ihnen eine genaue Kontrolle über das Seitenlayout. Sie müssen nur eine Rendering-Engine finden, die Textreferenzen unterstützt. Ich empfehle LaTeX ; es ist ein bisschen unhandlich, aber es macht die Arbeit erledigt.

    
Aaron Digulla 28.08.2012 15:36
quelle
1

Könnte das funktionieren?

%Vor%

(aus Seitenzahlen mit CSS / HTML )

    
Bart Friederichs 28.08.2012 15:22
quelle

Tags und Links