Hintergrundbild stört die Druckvorschau

  • Hallo Joomla Supporter,

    das Protostar Template habe ich mit einem Hintergrundbild versehen (über custon.css).

    Beim Drucken einer Seite z.B. http://aqua-neu.byethost7.com/index.php/aqua…omplettaquarien wird die Seite in der Druckvorschau transparent dagestellt mit stark störendem Hintergrundbild. Der Druck erfolgt korrekt ohne das Hintergurndbild.

    Wie lässt sich die Druckvorschau vom Hintergrundbild "reinigen"?

    Grü0e
    Martin

  • Zur hilfreichsten Antwort springen
  • Bei der Druckvorschau wird die Datei component.php statt index.php des Template verwendet. In der component.php kannst also eigenes CSS unterbringen, das zB Hintergrundbild entfernt.

    Falls dein Template keine component.php enthält, kopierst zuvor die Datei aus /templates/system/ in dein Template.

  • Hallo GHSVS,
    danke für Deine Informationen.

    Die component.php (ist im Protostar template Ordner vorhanden) habe ich wie folgt erweitert
    // Add Stylesheets
    $doc->addStyleSheet($this->baseurl . '/templates/' . $this->template . '/css/template.css');
    $doc->addStyleSheet($this->baseurl . '/templates/' . $this->template . '/css/custom-component.css');

    Was muss jetzt in die /css/custom-component.cs ?
    Sie enthält jetzt ein neues JPG
    body {
    background-image:url('../images/leer.jpg');
    background-repeat: repeat;
    }

    Aber leider keine Änderung bei der Druckvorschau.

    grüße
    martin

    Einmal editiert, zuletzt von Martin Ramsch (14. August 2016 um 17:27)

  • CSS-Datei ist geladen?

    Sowas in der Richtung, statte Bilder oder Bereiche mit der Klasse no-print aus, wenn diese ausgeblendet werden sollen:

    CSS
    body {
     background: none !important;
    }
    
    
    img.no-print {
     display: none;
    }
  • Die custom.css wird halt nach der custom-component.css geladen. Dann kann sie so auch nicht überschreiben, wenn du in beiden mit body{...} arbeitest.

    Der BODY-Tag der component.php hat aber eigene CSS-Klassen, die in index.php nicht sind.

    Code
    <body class="contentpane modal">

    Also kannst hierarchisch höher formulieren. Dann ist Ladereihenfolge egal.

    Code
    body.contentpane.modal{
     background-image: none;
    }

    oder halt nur
    body.contentpane{...}
    oder nur
    body.modal{...}

    Letztlich kannst dir so auch die custom-component.css sparen und alles in 1 Datei schreiben.

    Noch ans Herz gelegt. Wichtig!:
    Joomlaeigene Templates anpassen/ändern (z.B. Protostar, Beez3). Vorher eine Template-Kopie anlegen!

    • Hilfreichste Antwort

    body.contentpane.modal {
    background-image: none;
    }

    in der custom.css brachte die Lösung.

    Herzlichen Dank für diese einfach zu implmentierende Lösung. Ist super, dass das Template nicht geändert werden muss.

    Grüße
    Martin