You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何实现Mailchimp模板中图片div与相邻文本div动态垂直居中

Fix Dynamic Vertical Centering for Mailchimp Template Image Grid

Got it, let's solve that dynamic vertical centering problem for your Mailchimp template! Your current setup uses a fixed padding-top on the image column, which only works for a specific text length—we need a solution that automatically adjusts as the text grows or shrinks.

The Fix: Use Flexbox

Flexbox is supported by almost all modern email clients (including Gmail, Outlook 365, Apple Mail, and others that Mailchimp targets) and makes vertical centering trivial without hardcoded values. Here's how to update your code:

Updated CSS

.mcnTextContent { position: relative !important; margin: 0 !important; padding: 0 !important; }
.mcnTextContent { position: relative; left: 0px; padding: 10px !important; }
.mcnTextBlockOuter { padding: 0px !important; }
.mcnTextBlockInner { padding: 0px !important; background-color: white; }
.positionr { 
  position: relative !important; 
  display: flex; /* Enable flex layout */
  align-items: center; /* Vertically center child elements */
  flex-wrap: wrap; /* Optional: Stack columns on small screens */
}
.textcolumn { 
  width: 370px; 
  /* Remove float—flex handles layout */
  height: auto !important; 
}
.textcolumn h1 { text-transform: uppercase; color: black !important; font-family: "Arial" !important; font-weight: initial; }
.textcolumn p { font-family: "Arial" !important; font-size: 14px !important; color: black !important; }
.imagecolumn { 
  /* Remove float and fixed padding-top */
  margin-left: 20px; /* Optional: Add spacing between text and images */
}
.imagecolumn img { padding-left: 15px; padding-top: 10px; }

Updated HTML

<div class="positionr">
  <div class="textcolumn">
    <h1>Header</h1>
    <p>Body</p>
    <!-- Add more text here to test the dynamic centering -->
  </div>
  <div class="imagecolumn">
    <img src="your-image-url-1.jpg" alt="Image 1" />
    <img src="your-image-url-2.jpg" alt="Image 2"/><br />
    <img src="your-image-url-3.jpg" alt="Image 3" />
    <img src="your-image-url-4.jpg" alt="Image 4" />
  </div>
</div>

Key Changes Explained

  • Flex Parent Container: The display: flex; align-items: center; on .positionr is the core fix—it tells the browser to align all child elements (your text and image columns) vertically in the center, no matter how tall the text column gets.
  • Removed Floats: Floats are unnecessary with Flexbox and can cause layout conflicts, so we stripped those out entirely.
  • Dynamic Spacing: Replaced the fixed padding-top with optional margin spacing between columns, which stays consistent regardless of text length.
  • Mobile-Friendly: The flex-wrap: wrap; ensures that on smaller screens (like mobile), the image column will stack below the text column instead of squeezing sideways.

If you need to support very old email clients (like Outlook 2016 and earlier), you can add a conditional comment fallback, but for most Mailchimp use cases, the Flexbox solution will work perfectly.

内容的提问来源于stack exchange,提问作者Max Motu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 06:35:29