Computerhilfen.de Logo
Forum
Tipps
News

CSS: Div-Hintergrundfarbe

Hi Leute,

ich habe folgendes Problem:
Es gibt verschieden Farben (rot, gelb, grün,...), diese sollen (mit anderen Infos, die sind aber nicht relevant hier) als Report ausgedruckt werden können. Der vorhandene Programmcode in der JSP macht folgendes:

<div style=\"background: RGB(" + intRed + "," + intGreen + "," + intBlue + "); width: 40; position: relative; top:-8px; border=0\">
<img src=\"../common/images/utilSpacer.gif\" width=\"0\" height=\"40\" alt=\"\"/>
</div>

D.h., er stellt ein DIV dar, legt dort ein transparentes Bild rein und füllt den Hintergrund mit den RGB Werten der Farbe. Somit hat man praktisch auf dem Blatt Papier hinterher viele Quadrate die mit den entsprechenden Farben gefüllt sind.

Nun das Problem: Es ist die Angabe "background", beim Browser ist nämlich standardmäßig das Häckchen bei "Print background colors and images" nicht gesetzt. IT-technisch/sicherheitstechnisch sind bei allen Usern die InternetOptionen deaktiviert, sodass man das nicht ändern kann und es soll auch nicht geändert werden dürfen.
Das hat zur Folge, dass der Code oben bis zur "Druckvorschau" auf dem Bildschirm funktioniert und alles anzeigt, jedoch auf dem Papier werden die Farben nicht mit gedruckt.

Hat einer von euch eine Idee, wie man das CSS seitig lösen kann? Vielleicht mit Trick 17? Es müsste halt kein "background" sein, sondern eher "foreground"...


Gruß,
Mario 8)





Antworten zu CSS: Div-Hintergrundfarbe:

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button
Hm, vielleicht nicht die feine englische Art, aber 2 Vorschläge:

Entweder du erzeugst per PHP ein PNG mit dieser Farbe (1x1 Pixel groß) und ziehst das per CSS auf die entsprechend gewünschte Größe; nun legst du das ganze per z-index (und position: absolute) in den Hintergrund und den gewünschten Content darüber.

Falls das mit dem PNG mit Farbe zur Laufzeit nicht klappt, wäre eventuell noch eine Idee, ein Div zu erstellen mit einem Rahmen, wobei dieser Rahmen dann halt die Farbe hat aber das div praktisch nur aus diesem Rahmen besteht (also border: 50px solid red). Sehr unschön, aber sollte mit ein bisschen hantieren funktionieren. Das Prinzip wäre das gleiche wie mit dem PNG-Image, einfach per z-index in den Hintergrund legen.

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Danke für die Antwort. Mit dem z-index ist ne gute Idee, probiere ich mal. Sonst ist mein Ansatz jetzt, das mit media=sceen bzw. media=print in den Stylesheet-Definitionen zu lösen.

Gruß,
Mario 8)
 


« Dokument endgültig löschenVLC auf website?????? »
 

Schnelle Hilfe: Hier nach ähnlichen Fragen und passenden Tipps suchen!