Verschiedene :after-Attribute bei Links im Print-CSS

  • Hallo allerseits,

    ich habe folgende Frage:
    Ich habe in eine Druck-CSS einen :after-Befehl eingebaut:

    Code
    a[href]:after {
      content:" ("attr(href)")";
      }


    In der Druck-Version wird danach die URL ausgegeben. Nun habe ich eine URL-Klasse, die keine URL nachfolgend zeigen soll.

    Ich habe es versucht mit

    CSS
    a.printfooter-link:after {content:none !important;}:link {color: #000000; text-decoration : underline; } 
    a.printfooter-link:after {content:none !important;}:visited {color: #000000; text-decoration : underline;}
    a.printfooter-link:after {content:none !important;}:hover {color: #000000; text-decoration : underline; }

    Das funktioniert nicht. Könnt ihr sagen, wie ich das :after-Attribut bei der einen Klasse wieder deaktivieren kann? Das heißt, ich muss die Angabe von den Standardlinks für die Klasse printfooter-link überschreiben. Wie stelle ich das an?

    Vielen Dank für eure Antworten vorab.

    mailhunter

  • HTML
    @media print {
    
    
    a { color:#000;}
    a.printfooter-link { color:#ada;}
    a[href]:after {  content:" ("attr(href)")";}
    a.printfooter-link:after { content:none;}
    }

    Sollte funktionieren

  • djheke: Vielen Dank.

    Wie ich jetzt gesehen habe, wird leider auch online nicht der absolute, sondern nur der relative Link ausgegeben. Gibt es da eine Möglichkeit das zu verändern? Wenn ich online über einen relativen Link fahre, wird ja auch die komplette URL beginnend bei http:// angezeigt.

    Der normale Websitebenutzer wird nicht in die URL das Ausdrucks schauen, um sich dann die absolute URL selbst zusammen zu basteln... Kann ich irgendwie die absolute URL in der Anzeige erzwingen?

  • Im Prinzip ist das Ganze sehr einfach, der angegebene Code verlinkt relativ.

    Ich habe nun z.B. zwei Ordner mit der Domain nureinbeispiel.de:

    html (hierin: index.html)
    pdf (hierin: download.pdf)
    Wenn ich nun auf index.html einen Link zur download.pdf setze, mache ich das so <A HREF="../pdf/download.pdf">Hier können Sie die PDF runterladen</A>

    Über die Druck-CSS bekomme ich Folgendes ausgegeben: "Hier können Sie die PDF runterladen (../pdf/download.pdf)". Mit dieser Angabe kann niemand was anfangen. Die Ansicht gebe nur Sinn, wenn ausgegeben würde: "Hier können Sie die PDF runterladen (http//http://nureinbeispiel.de/pdf/download.pdf)"

  • Wenn ich den Pfad wie vorgeschlagen setze, komme ich nicht auf die DOC-Datei:
    <a href="/open/office/cdcover-openoffice.doc">Download</a>

    Offenbar kann diese Methode nur den eingegeben Link reproduzieren und dann geht es halt nicht mit relativen Links. im Ausdruck hilft es nicht, dass "../" auftaucht, wenn ich eine Ebene höher gehe und dann in einen neuen Ordner gehe. Diese Methode ist also nur bei absoluten Verlinkungen zu gebrauchen, ich müsste also http://nureinbeispiel.de/open/office/cdcover-openoffice.doc auf der HTML-Seite verlinken. Wäre möglich, dann gehen aber die relativen Links verloren und ohne Internet (also lokal) sind die Links dann nicht mehr zu gebrauchen.

    Da ich die relative Verlinkung nicht aufgeben will, hilft mir diese CSS-Funktion leider nicht weiter. Aber dann ist das ja nun geklärt:-).

    - - - Aktualisiert - - -

    PS: Diese Methode ist also leider nicht so schlau wie der Browser, der als Tooltip bei relativen Verlinkungen im Web ja immer die vollständige URL mit http://... anzeigt. Sowas hätte ich halt gern für CSS. Vielleicht gibt's das mal in einer neuen CSS-Version. Wünschen kann man es sich ja:-)