+7 (495) 229-0436   shopadmin@itshop.ru 119334, г. Москва, ул. Бардина, д. 4, корп. 3
 
 
Вход
 
 
Каталог
 
 
Подписка на новости
Новости ITShop
Windows 7 и Office: Новости и советы
Обучение и сертификация Microsoft
Вопросы и ответы по MSSQLServer
Delphi - проблемы и решения
Adobe Photoshop: алхимия дизайна
 
Ваш отзыв
Оцените качество магазина ITShop.ru на Яндекс.Маркете. Если вам нравится наш магазин - скажите об этом Google!
 
 
Способы оплаты
 
Курс расчета
 
 1 у.е. = 91.78 руб.
 
 Цены показывать:
 
 
 
 
  
Новости, статьи, акции
 

Верстка писем и email рассылок. Немного магии Gmail

12.11.2013 18:21
dudeonthehorse


Автор изображения Mike, Creative Mints

Добрый день. Я уже не раз писал о том, что media_queries в почтовых клиентах работают прекрасно. Даже outlook.com в браузере их адекватно воспринимает. Но вот gmail на яблоке и андроиде так не считает.

Если в случае остальных клиентов мы можем сделать, например так:
@media only screen and (max-width:480px) { .big_img { display:none !important; } .small_img { display:block !important; } } @media only screen and (max-width:600px) { .big_img { display:block !important; } .small_img { display:none !important; } }
То в gmail на смартфонах и планшетах данный трюк не прокатит. Поясню. У нас есть две разные картинки для разных разрешений письма. И в зависимости от разрешения экрана мы показываем необходимое нам. Способ не претендует на правильность решения, а лишь показывает чего сделать нельзя. Ниже я покажу пару примеров того, как в gmail можно сделать все хорошо без особых усилий.

Допустим у нас есть письмо со следующим кодом:
<table class="wrapper" bgcolor="#eeeeee" width="600" cellpadding="20" cellspacing="0" style="border-collapse:collapse;"> <tr> <td><!-- content --></td> </tr> </table>
А так же media_queries для него:
@media only screen and (max-width:480px) { .wrapper { width:100% !important; } }

В этом случае на десктопах везде мы получим письмо шириной в 600px. В мобильных клиентах 100%. Исключение - gmail, который будет вести себя немного иначе. И по разному в зависимости от контента внутри обертки.

В случае кучи текста в блоке контента или вот такой картинки
<img src="http://example.com/image.png" width="100%">
Письмо будет отображаться нормально, по всей ширине мобильного устройства. Gmail хоть и проигнорирует указанные нами media_queries, но тем не менее подстроит резиновый контент под ширину экрана девайса.

А теперь давайте дадим ему вот такой контент.
<table width="100%" cellpadding="0" cellspacing="0" style="border-collapse:collapse;"> <tr> <td bgcolor="#cccccc" align="center"> <a href="#" target="_blank" style="text-decoration:none;"><img border="0" src="http://habrastorage.org/storage3/b4a/216/54f/b4a21654ffd064069f349bd572f7332b.png" width="32" height="32" alt="fb"></a>   <a href="#" target="_blank" style="text-decoration:none;"><img border="0" src="http://habrastorage.org/storage3/1ef/eea/040/1efeea040a1d21001f46c0dfd93fbe1a.png" width="32" height="32" alt="tw"></a>   <a href="#" target="_blank" style="text-decoration:none;"><img border="0" src="http://habrastorage.org/storage3/558/805/086/55880508675da2db40244b2c2e7aa794.png" width="32" height="32" alt="vk"></a>   <a href="#" target="_blank" style="text-decoration:none;"><img border="0" src="http://habrastorage.org/storage3/cbd/d4f/43b/cbdd4f43bc9dd167a99d2950b834909e.png" width="32" height="32" alt="vk"></a> </td> </tr> </table>
Тут мы имеем четыре иконки соцсетей. Так вот мобильный gmail в таком случае эту табличку на всю ширину не растянет. Он сделает ее по ширине в размере места, которое занимают иконки внутри таблицы.

Как сделать хорошо? Очень просто. Объедините блок социальных иконок с блоком резинового контента вот так
<table class="wrapper" bgcolor="#eeeeee" width="600" cellpadding="20" cellspacing="0" style="border-collapse:collapse;"> <tr> <td><img src="http://example.com/image.png" width="100%"></td> </tr> <tr> <td> <table width="100%" cellpadding="0" cellspacing="0" style="border-collapse:collapse;"> <tr> <td bgcolor="#cccccc" align="center"> <a href="#" target="_blank" style="text-decoration:none;"><img border="0" src="http://habrastorage.org/storage3/b4a/216/54f/b4a21654ffd064069f349bd572f7332b.png" width="32" height="32" alt="fb"></a>   <a href="#" target="_blank" style="text-decoration:none;"><img border="0" src="http://habrastorage.org/storage3/1ef/eea/040/1efeea040a1d21001f46c0dfd93fbe1a.png" width="32" height="32" alt="tw"></a>   <a href="#" target="_blank" style="text-decoration:none;"><img border="0" src="http://habrastorage.org/storage3/558/805/086/55880508675da2db40244b2c2e7aa794.png" width="32" height="32" alt="vk"></a>   <a href="#" target="_blank" style="text-decoration:none;"><img border="0" src="http://habrastorage.org/storage3/cbd/d4f/43b/cbdd4f43bc9dd167a99d2950b834909e.png" width="32" height="32" alt="vk"></a> </td> </tr> </table> </td> </tr> </table>

Резюмирую


- Задавать фиксированные величины для обертки можно, gmail сам подстроит обертку под экран девайса
- Для элементов внутри обертки задаем процентные величины, либо фиксированные, но не более 320px по ширине.
- Мы не можем указывать разные стили отображения для разных разрешений экрана только в gmail клиентах.

Я изложил самые наболевшие примеры, которые встречаются в моей работе регулярно. Если у вас есть частные проблемы, описывайте их в комментариях, присылайте в личку или на dudeonthehorse собака gmail точка com. Я с удовольствием помогу решить проблему и, возможно, открою новые нюансы при верстке, о которых напишу в будущем.

Ссылки по теме

  
Помощь
Задать вопрос
 программы
 обучение
 экзамены
 компьютеры
Бесплатный звонок
ICQ-консультанты
Skype-консультанты

Общая справка
Как оформить заказ
Тарифы доставки
Способы оплаты
Прайс-лист
Карта сайта
 
Бестселлеры
Курсы обучения "Atlassian JIRA - система управления проектами и задачами на предприятии"
Microsoft Windows 10 Профессиональная 32-bit/64-bit. Все языки. Электронный ключ
Microsoft Office для Дома и Учебы 2019. Все языки. Электронный ключ
Курс "Oracle. Программирование на SQL и PL/SQL"
Курс "Основы TOGAF® 9"
Microsoft Office 365 Персональный 32-bit/x64. 1 ПК/MAC + 1 Планшет + 1 Телефон. Все языки. Подписка на 1 год. Электронный ключ
Курс "Нотация BPMN 2.0. Ее использование для моделирования бизнес-процессов и их регламентации"
 

О нас
Интернет-магазин ITShop.ru предлагает широкий спектр услуг информационных технологий и ПО.

На протяжении многих лет интернет-магазин предлагает товары и услуги, ориентированные на бизнес-пользователей и специалистов по информационным технологиям.

Хорошие отзывы постоянных клиентов и высокий уровень специалистов позволяет получить наивысший результат при совместной работе.

В нашем магазине вы можете приобрести лицензионное ПО выбрав необходимое из широкого спектра и ассортимента по самым доступным ценам. Наши менеджеры любезно помогут определиться с выбором ПО, которое необходимо именно вам. Также мы проводим учебные курсы. Мы приглашаем к сотрудничеству учебные центры, организаторов семинаров и бизнес-тренингов, преподавателей. Сфера сотрудничества - продвижение бизнес-тренингов и курсов обучения по информационным технологиям.



 

О нас

 
Главная
Каталог
Новинки
Акции
Вакансии
 

Помощь

 
Общая справка
Как оформить заказ
Тарифы доставки
Способы оплаты
Прайс-лист
Карта сайта
 

Способы оплаты

 

Проекты Interface Ltd.

 
Interface.ru   ITShop.ru   Interface.ru/training   Olap.ru   ITnews.ru  
 

119334, г. Москва, ул. Бардина, д. 4, корп. 3
+7 (495) 229-0436   shopadmin@itshop.ru
Проверить аттестат
© ООО "Interface Ltd."
Продаем программное обеспечение с 1990 года