В этой фантастической статье описывается, как создавать адаптивные таблицы, которые невероятно масштабируются для мобильных браузеров.
Теперь я пытаюсь применить ту же технику к электронным письмам в формате 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
Измените размер окна электронной почты, чтобы увидеть, как правильно изменяется размер таблицы
. Отправьте письмо самому себе и откройте его.
Теперь обратите внимание, как электронное письмо действительно отвечает на медиа-запрос, но безуспешно изменяет стиль таблицы.
Мне еще предстоит найти почтовый клиент, который действительно правильно отображает таблицу. Это тупик -или у вас есть идеи обходных путей?