我正在尝试发送带有一些图片的电子邮件。如果我在网页上显示图像,它们是100倍宽和100像素高,但如果图像高于100像素,则会隐藏多余的像素。
如果我尝试通过电子邮件发送,我无法将其剪裁出图像的多余高度 这是我在电子邮件中发送的内容:
<img src="<?php echo base_url().$thumb;?>" style="border:1px solid #35538d;width:100px;height:100px;overflow:hidden;text-align:center;background-color:#f0f0f0;" rel="nofollow" alt="Profile Photo">
答案 0 :(得分:8)
您尝试使用的CSS很可能不受您的电子邮件客户端的支持。电子邮件客户端通常支持大大减少的HTML子集,只支持最小的CSS。在撰写HTML电子邮件时,通常会出现回归基础 ... HTML表格布局等,以获得最大的支持。
编辑:如果您希望在所有电子邮件中使用此功能,则IMO尝试使用HTML / CSS 裁剪图像是不可能的客户端。有助于实现此目的的相关属性:背景图像,高度,溢出,剪辑等,并不是全面支持。所以,虽然它适用于某些人,但不会适用于其他人。
替代方案可能是减小宽度,使高度始终为100px。您需要计算服务器端的宽度,以保持适当的宽高比。
但是,我认为最好的解决办法是用PHP生成(nother)square 100px图像服务器端?
答案 1 :(得分:4)
您可能需要查看Guide to CSS support in email clients页面,了解哪些CSS属性可以用于各种电子邮件客户端。
答案 2 :(得分:3)
要完成这项工作,您需要创建一个方形对象(Div或表格)并将图像作为背景图像放入其中。 如果您需要将图像作为链接,则需要在其上放置透明的GIF。
答案 3 :(得分:1)
响应Alan O'Rourke,Outlook电子邮件客户端不支持背景图像。此外,如果您尝试使用背景图片,请务必将其包含为内嵌样式,因为Gmail会删除任何非内联的CSS。