Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

center align email in outlook.com

I have created a very simple html email. http://staging.xhtml-lab.com/mailtest/

It's working fine in all email clients, except in hotmail.com/outlook.com

in hotmail email is left aligned, it should remain center aligned.

I have added following code as suggested by emailology.org, but it have no effect.

<style type=“text/css”>
/**This is to overwrite Hotmail’s Embedded CSS************/
table {border-collapse:separate;}
a, a:link, a:visited {text-decoration: none; color: #00788a} 
a:hover {text-decoration: underline;}
h2,h2 a,h2 a:visited,h3,h3 a,h3 a:visited,h4,h5,h6,.t_cht {color:#000 !important}
p {margin-bottom: 0}
.ExternalClass p, .ExternalClass span, .ExternalClass font, .ExternalClass td {line-height: 100%}
/**This is to center your email in Hotmail************/
.ExternalClass {width: 100%;}
</style> 

Any suggestions for what else i can do to make the email center aligned?

like image 300
Alok Jain Avatar asked Oct 25 '12 09:10

Alok Jain


People also ask

Why is Outlook message centered?

I noticed in your screenshot that you have "Immersive Reader" selected. This shifts your cursor to the centre of the message box. The fix is quite simple, click the 'Immersive reader' to deselect it and your cursor will shift back to the left hand side. I hope this helps.

How do I fix my Outlook Inbox view?

Reset From View menu Launch the Outlook application from your device. Now, navigate to the menu bar and click on the View tab. Click on the Reset View icon. If this reset method does not work out, you can click on the Change View icon from the same view tab.


1 Answers

This should give you a centered e-mail:

<table style="width: 100%; background: red;">
  <tr>
    <td>
      <center>
        <table style="width: 640px; background: blue; margin: 0 auto; text-align: left;">
          <tr>
            <td>
              Your content here
            </td>
          </tr>
        </table>
      </center>
    </td>
  </tr>
</table>

The center-tag is what is required by Outlook and outlook.com. Other clients use the margin attribute. In some clients, text is centered after the center-tag, and therefore the text-align attribute is required.

If you want the width to be variable depending on the screen size, use the following code:

<table style="width: 100%; background: red;">
  <tr>
    <td>
      <center>
        <!--[if mso]>
        <table style="width: 640px;"><tr><td>
        <![endif]-->
        <div style="max-width: 800px; margin: 0 auto;">
          <table style="background: blue; text-align: left;">
            <tr>
              <td>
                Your content here
              </td>
            </tr>
          </table>
        </div>
      </center>
      <!--[if mso]>
      </td></tr></table>
      <![endif]--> 
    </td>
  </tr>
</table>

Outlook does not support max-width, and therefore the size is fixed to 640px for Outlook. For all other clients, the width of the e-mail will be the same as that of the viewing window, but maximum 800px.

Please let me know if you find a client where these solutions does not work, so that we can find a solution that works with as many clients as possible.

like image 197
Magnar Myrtveit Avatar answered Oct 11 '22 12:10

Magnar Myrtveit