0

我正在开发一个 html 模板来向用户​​发送电子邮件。该模板可以包含不同大小的图像,并且每封电子邮件的图像都可以不同。我们希望将每个图像都调整到合适的120px X 90px大小,但是由于 Outlook 不支持诸如此类的 css 属性object-fit,并且由于固定的高度属性,它使图像看起来要么被拉伸(小图像)要么被压扁(大图像)。如果去掉 height 属性,会影响整体设计。

有人可以建议object-fit:contain在 c# 中实现 css 属性以使图像适合120px X 90px(4:3 比例)或使用 Outlook css 属性吗?

示例: https ://www.w3schools.com/css/tryit.asp?filename=trycss3_object-fit_all

提前致谢!

PS:我正在使用 C# razor 引擎来生成电子邮件。

更新 #1:Outook 黑客/解决方案没有帮助。有人可以建议如何剪裁 base64 编码的图像以保持其纵横比(4:3),同时适合图像帧(120px X 90px)?

4

1 回答 1

0

自从我在我的 C# 应用程序中使用嵌入式 Razor 引擎创建模板电子邮件(包括图像)以来,已经有五年多了,所以我不再记得细节了。

我确实记得电子邮件样式根本无法与网页样式相提并论。电子邮件客户端软件对 CSS 的支持很糟糕。

也许您可以尝试使用元素的widthandheight属性<img>而不是(或除此之外)尝试在此处使用 CSS?

编辑:

我发现了一些五年前的旧测试文件。那时,我确实设置了元素的widthandheight属性<img>,并且我还在一个内联属性中使用了以下 CSSstyle属性:

max-width: 120px;
max-height: 90px;
display: inline !important;

因此,除了任何其他属性和样式属性之外,图像标签看起来像这样:

<img src="<your image location here>" width="120" height="90" style="max-width: 120px; max-height: 90px; display: inline !important" />

我现在还没有测试过,但我希望这对你有用。

编辑2:

我注意到我还在<img>旧的测试文件中使用了一个自关闭标签,因为我将文档类型声明为 XHTML:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

我相应地修复了我以前的代码。对于那个很抱歉。

于 2021-03-17T06:42:39.790 回答