On Tue, 2012-02-07 at 20:13 -0500, Joseph Brennan wrote: > Now <style> ... </style> with garbage in it is interesting. That > would never be in real mail. Or so you'd think! > Maybe, maybe not. I think spammers have found that you can put any old junk between <style></style> tags. I base this on screwing up styles when I was learning to use them and noticing that anything the browser can't parse in there is silently ignored.
For fun I kicked this together: ================================================================================= <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> <html> <head> <meta name="generator" content= "HTML Tidy for Linux/x86 (vers 25 March 2009), see www.w3.org"> <title>Big red test</title> <style type="text/css"> Maybe, maybe not. As a pure guess, I think spammers may have found that you can put any old junk between [style] and [/style] tags. I base this on screwing up styles when I was learning to use them and noticing that anything the browser can't parse in there is silently ignored. </style> <style type="text/css"> p.c1 {color: red; font-size: xx-large; font-weight: bold} </style> <style type="text/css"> Maybe, maybe not. As a pure guess, I think spammers may have found that you can put any old junk between [style] and [/style] tags. I base this on screwing up styles when I was learning to use them and noticing that anything the browser can't parse in there is silently ignored. p.c1 {color: red; font-size: xx-large; font-weight: bold} </style> </head> <body> <p class="c1">Big red test</p> <p>Heading should be red</p> </body> </html> ================================================================================= I used three <style> sections because, when I put the junk text into one style section in front of the actual style definition, that got ignored. If you cut and paste this example as a file and feed it to your browser, you should see the first body line in bold red letters. I've tested this with FireFox and Lynx, which work as I expected. As you can see, the file has been passed through HTML by HTML-tidy, which says it is valid HTML. Martin