在网页中显示网页的最佳方式?

时间:2009-07-15 10:01:28

标签: html css webmail

我正在编写一个webmail产品,一些电子邮件的主体css会改变背景......所以当我在Html.Decode()那个电子邮件主体时,它正在改变整个页面的CSS。

有没有一种好方法可以解决这个问题?

3 个答案:

答案 0 :(得分:5)

您可以使CSS比电子邮件规则更具体。例如:

body.body.bodybody

更具体

body.body中与上述较小示例冲突的任何样式都将覆盖。但要停止合并的样式,您需要定义每种样式。

或者,您可以在电子邮件中重写CSS,这是目前大多数网络邮件/桌面电子邮件客户端的方式,不管怎样。例如,如果您使用#emailMessage为所有规则添加前缀,并将电子邮件放在<div id="emailMessage"></div>标记内,则电子邮件中的所有样式都只会应用于该命名空间内。

使用iframe显示电子邮件只会引入更多基于可访问性等问题。祝你好运。

答案 1 :(得分:4)

问题的答案可能是“iframe”,但在您的具体情况下,编写一个网络邮件客户端会向您介绍一个名为“从可能极其无效的HTML中剥离css”的精彩新地狱由各种各样的客户生成,他们对电子邮件中允许的html类型都有自己的想法“。

祝你好运!

答案 2 :(得分:1)

一种常见的方法是使用iframe,但我不确定这是否适用于您的问题。

基本上它会在另一个页面中加载不同的html页面。这使它独立,但它确实意味着您有2页显示一封电子邮件。

http://www.w3schools.com/TAGS/tag_iframe.asp