HTML-CSS-Mail

  • Ich hätte da gerne mal folgendes Problem:
    Ich benutze selbstgemachtes Briefpapier in der Art wie auf der Abbildung hier (handgeschöpft, Bütten)



    Sinn der Sache ist, dass man ein Textfeld mit definierter Breite in der Mitte hat, sowie ein Feld mit der Adresse. Der grüne Hintergrund nimmt die Breite des Fensters ein, in der sich der Leser die Mail anzeigen lässt, die ist ja immer anders. Das Textfeld ist zur Hervorhebung mit einem semitransparenten GIF-Bild hinterlegt. Und da liegt die Schwierigkeit: Das semitransparente GIF-Bild für den Texthintergrund wird nicht mitgesendet.


    Das Layout ist mit HTML formatiert, einigermaßen valide, als grüner Hintergrund ist über das HTML-background-Tag eine jpg-Grafik eingefügt. Die sieht man auch immer.


    Der weiße Hintergrund ist mit CSS durch einen DIV-Container definiert, das sieht in der Vorlage so aus:


    Code
    <div id="inhalt" style="background-image: url(file:///C|/Eigene%20Dateien/Briefpapier/weiss_trans_50.gif);">


    So lange ich die Vorlage direkt aufrufe, wird der weiße Text-Hintergrund noch angezeigt.


    Wenn ich die Mail versendet habe oder auch nur zwischenspeichere stelle ich fest, dass das weiße Hintergrund-GIF nicht mitgesendet wurde. Das liegt anscheinend daran, dass der Thunderbird eigenmächtig den Code verändert in folgendes


    Code
    <div id="inhalt" style="background-image: url("file:///C|/Eigene%20Dateien/Briefpapier/weiss_trans_50.gif");">


    Wer bis hierhin durchgehalten hat und es nicht gleich sieht - da sind auf geheimnisvolle Weise zwei Anführungszeichen dazugekommen, in der Klammer hinter dem url. Sobald die drin sind, wird das Bild weder angezeigt noch mitgesendet.



    Ich finde es unhöflich von dem Thunderbird, dass er den Code eigenmächtig ändert - auch wenn es vielleicht gut gemeint war. Aber: Weiß irgendjemand, wie man dieses Verhalten ändert?


    Habe selbstverständlich schon verschiedene alternative Wege ausprobiert, beispielsweise mit Tabellen, aber es geht weder mit dem HTML-background-Tag noch mit dem CSS-background-image und letztlich liegt es eben doch daran, dass Thunderbird automatisch am Code herumfummelt. Ja, ich weiß, davon hängt mein Leben nicht ab. Trotzdem! Für Hinweise bin ich dankbar :)


    Thunderbird 3.1.9 auf WinXP POP3

  • Hallo,
    aus Erfahrung mit dem Einfügen nicht in TB selbst kreierten Grafiken/HTML-Codes kann ich dir nur sagen, dass vermutlich TB nicht damit klarkommt. Soweit ich das beurteilen kann, kann bzw. will TB diese Art von Skripten nicht ausführen.
    Da du ja die Grafik nicht als reine Bilddatei zu Verfügung hast, sehe ich AFAIK keine Möglichkeit.
    Du kannst ja versuchen, im Postausgang den Quellcode zu ändern. Da ich keine derartige Datei zur Verfügung habe, kann ich selbst nicht testen und weiß daher nicht, ob sie dann auch so beim Empfänger ankommt. Hat der TB, wird er sie trotzdem nicht anzeigen können.
    Nach einer solchen Änderung - wenn sie TB überhaupt akzeptiert - kann es passieren, dass TB sich weigert, die Mail zu versenden.
    Hier sind die HTML-Fähigkeiten von TB am Ende.
    Möglicherweise hast du mit Incredimail, Windows Live Mail und Outlook mehr Glück.


    Gruß
    edit:
    seit Version 3.0 ist Javascript unwiederbringlich abgestellt. In Version konnte man es noch einschalten.

  • Ah, vielen Dank für Deine schnelle Antwort!


    Quote

    Hallo,
    aus Erfahrung mit dem Einfügen nicht in TB selbst kreierten Grafiken/HTML-Codes kann ich dir nur sagen, dass vermutlich TB nicht damit klarkommt. Soweit ich das beurteilen kann, kann bzw. will TB diese Art von Skripten nicht ausführen.


    Ich bin da nicht so der Fachmann, aber CSS-Anweisungen sind doch noch lange kein Script, oder?
    Ich will doch im Grunde nur, dass TB genau das tut, was er sonst auch tut - und dabei den von mir erstellten Formatierungs-Auszeichnungs-Text nicht verändert.


    Das ganze ist unter den erweiterten Eigenschaften eigentlich wohl auch so vorgesehen. Beispielsweise kann man bei "Tabellen" ->"erweitert" -> "Inline Style (CSS)" eingeben. Nur dass er eben selbsttätig Anführungszeichen hinzufügt, mit denen er dann nichts anfangen kann. Ich würde das gerne abstellen und wäre dann vermutlich glücklich.


    Quote

    Da du ja die Grafik nicht als reine Bilddatei zu Verfügung hast, sehe ich AFAIK keine Möglichkeit.


    Doch, klar habe ich, jedenfalls habe ich sie selbst erstellt und sie liegt lokal bei mir auf der Festplatte - oder was ist mit "reine Bilddatei" gemeint?

  • Ah, ganz vergessen, einen gewissen Kenntnisstand habe ich bereits, falls sich tatsächlich irgendjemand für sowas abwegiges interessiert:


    Der Hintergrund ist ja weiß - das muss nicht zwingend ein Bild sein, man kann auch einfach eine Hintergrundfarbe angeben.
    Man kann dann das Durchscheinen der weißen Farbe erreichen, indem man eine Tabelle¹ anlegt und der Zelle mit CSS Transparenz zuweist:


    Code
    <td style="-moz-opacity: 0.7; opacity: 0.7; filter:alpha(opacity=70);" bgcolor="#ffffff">


    Die drei Werte "-moz-opacity", "opacity" und "filter" sind notwendig, weil jeder Browser was anderes macht: Mozilla, Opera und IE.
    Auch darin verändert TB eigenmächtig den Text und lässt beim geringsten Speichern großzügig die Werte für den IE und den Opera-Browser weg. Es gibt ja nur Mozilla.


    Die vermeintliche Lösung hat nur einen kleinen Schönheitsfehler: Der gesamte Inhalt der Zelle wird ebenfalls zu 70% transparent, also sowohl der schwarze Text wie auch das Logo. Heißt also, dass es bei großem Kontrast nicht so besonders aussieht, wenn durch den schwarzen Text und das Logo der Hintergrund schimmert. Daher mein Ansatz aus dem ursprünglichen Posting.



    ¹ sorry, ich habe das mittels Tabelle gelöst, geht sicher genauso mit div-Containern