这篇精彩的文章描述了如何创建可以惊人地扩展到移动浏览器的响应式表格。
现在我正在尝试将相同的技术应用于 html 电子邮件,但display:block
似乎不适用于 html 电子邮件。
要重现该问题:
将以下代码另存为 HTML 页面:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <meta charset="utf-8"> <style type="text/css"> @media only screen and (max-width: 760px), screen and (max-device-width: 480px) { /* Force table to not be like tables anymore */ table, td, tbody, tr{ display: block; width:100%; padding:0; clear:both; } td { /* Behave like a "row" */ position: relative !important; } } </style> </head> <body> <table style="width:100%;"> <tr> <td style="border:1px solid red;">1/1</td> <td style="border:1px solid red;">1/2</td> <td style="border:1px solid red;">1/3</td> </tr> <tr> <td style="border:1px solid red;">2/1</td> <td style="border:1px solid red;">2/2</td> <td style="border:1px solid red;">2/3</td> </tr> </table> </body> </html>
在 Safari 中打开页面
调整窗口大小以注意表格如何随着较小的窗口大小而变化
按CMD+i或
File->Mail
此页面的内容创建 HTML 电子邮件调整电子邮件窗口的大小以注意表格如何正确调整大小
将电子邮件发送给自己并打开它。
现在请注意电子邮件确实如何响应媒体查询但未成功地重新设置表格的样式。
我还没有找到真正正确显示表格的电子邮件客户端。这是一个死胡同还是你有解决方法的想法?