我目前正在制作一些电子邮件模板,我希望尽可能少使用CSS。因此,我不是使用'padding‘或'margin',而是使用cellpadding=""和cellspacing=""属性。
我想知道,在CSS中,当向这样的元素应用填充时,可以使用X和Y:
padding: 0 10px 3px 0;对cellpadding=""或cellspacing=""属性也有这样的方法吗?
发布于 2017-09-04 09:38:07
因此,如果您将来遇到这个问题,并且您正在为您的网站寻找解决方案,那么我强烈建议您使用CSS,而不是不建议使用的cellpadding和cellspacing属性!您可以内联地定义它,因此它可能感觉有点像cellpadding,但最好在外部CSS文件中编写这个声明,并定义如下
td {
padding: 5px; /* cellpadding */
margin: 5px; /* cellspacing */
}您甚至可以设置元素的每个方面的padding和margin,如下所示:
td {
padding: 5px 10px 15px 20px; /* top, right, bottom, left */
margin: 5px 10px 15px 20px; /* equal to padding */
}现在,如果您遇到了这个问题,因为您目前正在开发HTML电子邮件模板,首先请接受我的慰问。这是一项非常可怕的任务,现在甚至(或特别)如此。
编写HTML电子邮件是使用过时的HTML元素和属性而不是最新的CSS解决方案的唯一借口,因为CSS的处理方式与电子邮件客户端有很大的不同,而且其中大多数都对过时的内容有一些遗留的支持。在每一种情况下,您都应该尽可能多地进行测试,以检查是否可能有一个CSS解决方案,该解决方案适用于最常见的客户端(不同的浏览器和iOS客户端、Outlook、Win10邮件应用程序、iOS和安卓本地邮件应用程序、收件箱或Gmail应用程序等)。如果它有效:使用CSS!如果效果更好的话,只能使用老式的HTML。
在任何情况下,您都需要使用内联CSS声明,因为大多数电子邮件客户端都切断了<head>中定义的CSS,而且它们根本不会加载外部文件。
现在,为了回答问题:对于cellpadding和cellspacing,不可能为每一边设置单独的填充或间距,不幸的是,您可以只指定一个适用于每一侧的数字。但在这种具体情况下,我认为使用内联css与填充和/或保证金是安全的,这是大多数电子邮件客户端支持的,就我所知。
https://stackoverflow.com/questions/46033715
复制相似问题