Cómo diseñar el cuerpo del correo electrónico en php

Quiero estilizar el cuerpo del correo. He intentado los siguientes métodos para diseñar el cuerpo del correo. Pero ninguno de ellos funcionó

1) Hoja de estilo externa usada style.css

td{padding:10px;} 

mail.php

 
....

2) Hoja de estilo interna definida:

mail.php

   td{ padding-bottom:8px; }  
....

Lo sé, el estilo en línea funciona haciendo

, pero tengo muchas tablas, hacer el estilo en línea no es una buena idea, ¿hay algún trabajo para no tener que definir el estilo? para cada elemento

para el correo electrónico, generalmente la apuesta más segura son las tablas y los estilos en línea (todo lo que no debería estar haciendo en diseño web).

 $mailBody = ''; $mailBody .=''; $mailBody .=''; $mailBody .=''; $mailBody .=''; $mailBody .='
'; $mailBody .='';

Lamentablemente, las hojas de estilo internas y externas no siempre funcionan en diferentes clientes de correo electrónico.

Por lo general, las tablas son el camino a seguir. Lamentablemente para obtener el soporte más extendido, debe usar estilos en línea. Mucho se hace en cascada, por lo que no tienes que darle un estilo a cada elemento. Por ejemplo, usar font-family en un elemento de table lo aplicaría a elementos td .

El monitor de Campaña proporciona una visión general útil del soporte para CSS a través de los clientes de correo electrónico más comunes aquí http://www.campaignmonitor.com/css/

El boilerplate de correo electrónico ( http://htmlemailboilerplate.com/ ) también le proporcionará una plantilla con la que puede comenzar y le enseñará cómo evitar muchas de las deficiencias comunes de muchos clientes de correo electrónico.

Hay una solucion. Por favor mira esto: CSS al estilo Inline

También hay otra biblioteca que hace la misma tarea. http://www.pelagodesign.com/sidecar/emogrifier/

Básicamente, estas bibliotecas convierten las reglas de estilo CSS en estilos en línea, de modo que todos los clientes de correo electrónico procesen correctamente su documento HTML.