Ошибка отображения HTML-таблицы в Outlook Desktop - PullRequest
0 голосов
/ 30 апреля 2019

У меня есть приложение Python, которое отправляет электронную почту в формате HTML.В письме содержится всего 12 HTML-таблиц с простейшим HTML-кодом.Однако в КАЖДОЙ электронной почте есть некоторые ошибки формата.Отметьте красные рамки на скриншоте enter image description here.Я уверен, что HTML-код действителен.Как решить проблему?

[обновление] Второе изображение - тот же HTML-код в Firefox.Я использую рабочий стол Microsoft Office 365.

 try:
        sender = ercot_config.getProperty('SMTP_SENDER')
        to = ercot_config.getProperty('TARGET_EMAIL')


        msg = MIMEMultipart()
        msg['Subject'] = title

        body = """
        <html>
        <head>
        <style>
            td {
                    min-width: 100px;
                    width: 100px;
                    border:solid lightgrey 1.0pt;
                    border-left:none;                
                    padding:3.75pt 3.75pt 3.75pt 3.75pt;
                    text-align:left;
            }
            th {
            background:#00285e;
                min-height: 20px;
                height: 20px;
                }
                h3 {
                font-size:14.0pt;
                font-family:&quot;Arial&quot;,&quot;sans-serif&quot;;
                color:#555555
                    }

            .td-profit{
                color: #33cc33;
            }
            .td-loss {
                color: #e60000;
            }
            .tr-total {
                background-color: #f1f1f1;
                font-weight: 600

            }
            .place-holder {
                margin-top: 15px
            }

        </style>
        </head>

        <body>
        %s
        </body>
        </html>

        """ % htmlBody

        part2 = MIMEText(body, 'html')
        msg.attach(part2)

        s = smtplib.SMTP(ercot_config.getProperty('SMTP'))
        s.ehlo()
        s.starttls()
        s.login(sender, ercot_config.getProperty('SMTP_PASSWD'))

        s.sendmail(sender, to.split(","), msg.as_string())
        s.quit()

HTML-код для первой таблицы на скриншоте

<table id="t1"><tr><th colspan="26">Physical IMPORT - DC_R</th></tr><tr><th>Line Item</th><th>HE1</th><th>HE2</th><th>HE3</th><th>HE4</th><th>HE5</th><th>HE6</th><th>HE7</th><th>HE8</th><th>HE9</th><th>HE10</th><th>HE11</th><th>HE12</th><th>HE13</th><th>HE14</th><th>HE15</th><th>HE16</th><th>HE17</th><th>HE18</th><th>HE19</th><th>HE20</th><th>HE21</th><th>HE22</th><th>HE23</th><th>HE24</th><th>Total</th></tr><tr><td>MX DA Price</td><td>$39.02</td><td>$33.62</td><td>$31.08</td><td>$30.38</td><td>$30.47</td><td>$32.18</td><td>$34.93</td><td>$45.14</td><td>$22.45</td><td>$23.62</td><td>$33.79</td><td>$41.12</td><td>$45.84</td><td>$45.36</td><td>$46.55</td><td>$46.10</td><td>$46.57</td><td>$45.70</td><td>$45.74</td><td>$22.08</td><td>$51.95</td><td>$53.70</td><td>$47.47</td><td>$37.03</td><td>-</td></tr><tr><td>US RT Price</td><td>$16.43</td><td>$15.54</td><td>$14.17</td><td>$8.12</td><td>$9.56</td><td>$15.04</td><td>$16.12</td><td>$15.14</td><td>$16.65</td><td>$16.52</td><td>$17.39</td><td>$17.84</td><td>$19.16</td><td>$23.50</td><td>$34.20</td><td>$33.98</td><td>$35.99</td><td>$33.40</td><td>$29.19</td><td>$26.61</td><td>$26.65</td><td>$25.98</td><td>$21.12</td><td>$18.57</td><td>-</td></tr><tr><td>Volume</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>PnL</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>Total Costs</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>Net PnL</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr></table>

enter image description here

...