@media查询被忽略为iPhone

问题描述:

由于某种原因,我的媒体查询不适用于我发送电子邮件时。我将它从Outlook 2007发送到Gmail,并使用iPhone 4s查看它。我试着用简单的@media查询规则发送测试邮件(即只改变字体颜色的媒体查询),但这些都不起作用。另外,我试着从教程演示发送HTML邮件(这一个如:http://www.netmagazine.com/tutorials/build-responsive-emails),但媒体查询也被忽略了有@media查询被忽略为iPhone

我已经附上下面我的代码开头:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org /TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> 
<meta name="viewport" content="width=device-width, initial-scale=1.0"/> 
<title>Sample</title> 
<style type="text/css"> 
    @media only screen and (max-width: 480px) { 
     table[class="contenttable"] { 
      width:400px !important; 
      text-align: left !important; 
     } 

     table[class="contenttable2"] { 
      width: 382px !important; 
      text-align: left !important; 
     } 

     td[class="changer"] { 
      width:382px !important; 
      height: 10px !important; 
     } 

     td[class="autoalign"] { 
      padding: 0 !important; 
      text-align: center !important; 
     } 

     img[class="logo"] { 
      margin-left: -10px !important; 
     } 

     td[class="autotext"] { 
      font-size: 14px !important; 
      text-align:left !important; 
      height: 70px !important; 
     } 

     td[class="textresize"] { 
      font-size: 8px !important; 
     } 

     img[class="imgHide"] { 
      display:none !important; 
      height:0 !important; 
      width:0 !important;  
     } 
    } 
</style> 
</head> 
<body style="padding:0; margin:0; webkit-text-size-adjust:none;-ms-text-size-adjust: 100%;"> 
<table width="600" border="0" cellpadding="0" cellspacing="0" class="contenttable" align="center" style="font-family: Arial;"> 

我完全丧失了什么问题。任何帮助将不胜感激。

不幸的是,gmail不支持媒体查询(见http://www.emailonacid.com/blog/details/C13/media_queries_in_html_emails),尽管很多人都这样做。最好的办法是首先不用媒体查询,然后使用一些常规的CSS来获得堆栈等,接受这样一个事实,即你的设计在任何地方都不会看起来很完美,但仍然可以访问。然后,您可以添加一些媒体查询魔术,使其在支持它的每个客户端上都看起来棒极了。有关这种方法的一个很好的示例,请参阅http://www.zurb.com/article/1119/create-emails-for-any-device-introducing-;有关使用某些基本模板的http://www.zurb.com/playground/responsive-email-templates可帮助您启动并运行。

+0

所以问题是我发送到一个Gmail?我使用原生iphone邮件应用程序来查看它,而不是浏览器。这有什么区别吗? – zheshishei 2013-04-05 08:28:40

+1

不幸的不是。根据第一个链接,“由于Gmail不支持嵌入式CSS,因此任何Gmail移动应用都不支持媒体查询并不奇怪”。 – supermasher 2013-04-05 08:33:42

+0

Gmail删除样式标记中的所有内容。因为这是声明媒体查询的唯一方式,所以它不支持它们。 – John 2013-04-05 15:56:50