Inconsistent email rendering between iOS and Android Gmail apps

I’m having trouble with an email I created using tables. When I send it to Gmail, it looks different on Android and iOS devices.

On Android, the Gmail app shows the rows in a compact, mobile-friendly format. But on iOS, the Gmail app displays everything at full width. This makes the text really small and hard to read.

I can’t figure out why this is happening. I’ve tried searching online but couldn’t find any clear answers. Has anyone else run into this problem? How can I make my email look the same on both Android and iOS Gmail apps?

Here’s a simplified version of my email structure:

<table width='100%'>
  <tr>
    <td style='background-color: #fff; padding: 10px;'>
      <table width='100%'>
        <tr>
          <td class='image-box' width='120px'>
            <img src='placeholder.jpg' alt='Event image'>
          </td>
          <td class='content-box'>
            <div class='event-date'>Dec 31, 2023</div>
            <h2 class='event-title'>Community Fundraiser</h2>
            <div class='event-organizer'>Local Charity Group</div>
          </td>
        </tr>
      </table>
    </td>
  </tr>
</table>

Any ideas on how to fix this rendering issue?

I’ve encountered similar issues with email rendering across different devices. One approach that’s worked well for me is using a fluid hybrid design. This technique combines fluid tables with max-width properties to create a more consistent layout across various email clients.

Try replacing your fixed widths with percentage-based widths and add max-width constraints where needed. For example:

<table width='100%' style='max-width: 600px;'>
  <tr>
    <td style='background-color: #fff; padding: 10px;'>
      <table width='100%'>
        <tr>
          <td class='image-box' width='30%' style='max-width: 120px;'>
            <img src='placeholder.jpg' alt='Event image' style='width: 100%; max-width: 120px;'>
          </td>
          <td class='content-box' width='70%'>
            <!-- Content here -->
          </td>
        </tr>
      </table>
    </td>
  </tr>
</table>

This approach often provides better consistency across different email clients and devices. Remember to test thoroughly after making changes.

hey ryan, ive seen this before. gmail on ios can be a pain sometimes.
have u tried using media queries? they might help adjust the layout for different screens. also, check ur viewport meta tag. make sure its set right for mobile devices. good luck!

I’ve dealt with similar email rendering headaches, and one thing that’s helped me is using a mobile-first approach. Instead of starting with a desktop layout and trying to make it work on mobile, design for small screens first.

Try setting your outer table to 100% width with no fixed pixel widths. Then use percentage-based widths for inner elements. Something like:

<table width='100%' cellspacing='0' cellpadding='0'>
  <tr>
    <td style='padding: 10px;'>
      <table width='100%'>
        <tr>
          <td width='30%' style='vertical-align: top;'>
            <img src='placeholder.jpg' alt='Event image' style='width: 100%;'>
          </td>
          <td width='70%' style='vertical-align: top; padding-left: 10px;'>
            <!-- Content here -->
          </td>
        </tr>
      </table>
    </td>
  </tr>
</table>

This approach tends to work better across different email clients. Also, make sure you’re using inline CSS as much as possible, as some clients strip out header styles. Hope this helps!