Components
Column
Create columns within rows for multi-column email layouts.
Create columns within rows for multi-column email layouts. Columns render as table cells optimized for email client compatibility.
Installation
The EColumn
component is automatically available when you install nuxt-email-renderer
. No additional imports needed.
Getting Started
Use columns inside rows to create horizontal layouts:
emails/WelcomeEmail.vue
<template>
<EHtml>
<EBody>
<EContainer>
<ERow>
<EColumn style="width: 50%;">
<EText>First column content</EText>
</EColumn>
<EColumn style="width: 50%;">
<EText>Second column content</EText>
</EColumn>
</ERow>
</EContainer>
</EBody>
</EHtml>
</template>
Technical Details
The column component renders as a table cell (<td>
) for maximum email client compatibility:
<td role="presentation">
<!-- Your content here -->
</td>
Best Practices
Width specification: Always specify column widths as percentages for consistent layout.
Total width: Ensure column widths add up to 100% within a row.
Mobile consideration: Plan how columns will stack on mobile devices.
Column Width Guidelines
<template>
<!-- Good: Widths add up to 100% -->
<ERow>
<EColumn style="width: 30%;">30%</EColumn>
<EColumn style="width: 70%;">70%</EColumn>
</ERow>
<!-- Good: Equal distribution -->
<ERow>
<EColumn style="width: 25%;">25%</EColumn>
<EColumn style="width: 25%;">25%</EColumn>
<EColumn style="width: 25%;">25%</EColumn>
<EColumn style="width: 25%;">25%</EColumn>
</ERow>
<!-- Avoid: Widths over 100% -->
<ERow>
<EColumn style="width: 60%;">60%</EColumn>
<EColumn style="width: 60%;">60% - This will cause issues</EColumn>
</ERow>
</template>
Email Client Support
- ✅ Gmail (Desktop & Mobile)
- ✅ Apple Mail
- ✅ Outlook 2016+
- ✅ Yahoo Mail
- ✅ Thunderbird
- ✅ Samsung Email
- ✅ HEY
Mobile Behavior
On mobile devices, most email clients will automatically stack columns vertically. You can control this with CSS:
<template>
<EHtml>
<EHead>
<EStyle>
@media screen and (max-width: 600px) { .stack-column { display: block
!important; width: 100% !important; } }
</EStyle>
</EHead>
<EBody>
<ERow>
<EColumn class="stack-column" style="width: 50%;">
Stacks first on mobile
</EColumn>
<EColumn class="stack-column" style="width: 50%;">
Stacks second on mobile
</EColumn>
</ERow>
</EBody>
</EHtml>
</template>
Related Components
ERow
- Container for columnsEContainer
- Overall layout wrapperESection
- Content sections within columns