【问题标题】:Mystery Padding..?神秘填充物..?
【发布时间】:2013-01-11 22:15:06
【问题描述】:

我最近设计并完成了 2 份时事通讯;但是当我回去进行快速更改(在容器外部添加背景颜色)时,我意识到内容和背景颜色之间存在一些神秘的填充,我想要完成的是获取背景在主要内容的边缘着色。我已经玩了很多 CSS,但仍然没有想出一个修复..

Fiddle

以下是新闻通讯的完整来源:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

        <title>The Cook's Nook</title>
        <style type="text/css">
            /* Client-specific Styles */
            #outlook a{padding:0;} /* Force Outlook to provide a "view in browser" button. */
            body{width:100% !important;} .ReadMsgBody{width:100%;} .ExternalClass{width:100%;} /* Force Hotmail to display emails at full width */
            body{-webkit-text-size-adjust:none;} /* Prevent Webkit platforms from changing default text sizes. */

            /* Reset Styles */
            body{margin:0; padding:0;}
            img{border:0; height:auto; line-height:100%; outline:none; text-decoration:none;}
            table td{border-collapse:collapse;}
            #backgroundTable{height:100% !important; margin:0; padding:0; width:100% !important;}

            /* Template Styles */

            /* /\/\/\/\/\/\/\/\/\/\ STANDARD STYLING: COMMON PAGE ELEMENTS /\/\/\/\/\/\/\/\/\/\ */

            /**
            * @tab Page
            * @section background color
            * @tip Set the background color for your email. You may want to choose one that matches your company's branding.
            * @theme page
            */
            body, #backgroundTable{
                 background-color:#7C1A27;
            }

            /**
            * @tab Page
            * @section email border
            * @tip Set the border for your email.
            */
            #templateContainer{
            }

            /**
            * @tab Page
            * @section heading 1
            * @tip Set the styling for all first-level headings in your emails. These should be the largest of your headings.
            * @style heading 1
            */
            h1, .h1{
                color:#000000;
                display:block;
                font-family:Arial;
                font-size:12px;
                line-height:100%;
                margin-top:0;
                margin-right:0;
                margin-left:0;
                text-align:left;
                font-weight: normal;
            }

            /**
            * @tab Page
            * @section heading 2
            * @tip Set the styling for all second-level headings in your emails.
            * @style heading 2
            */
            h2, .h2{
                 color:#202020;
                display:block;
                 font-family:Arial;
                 font-size:30px;
                 font-weight:bold;
                 line-height:100%;
                margin-top:0;
                margin-right:0;
                margin-bottom:10px;
                margin-left:0;
                 text-align:left;
            }

            /**
            * @tab Page
            * @section heading 3
            * @tip Set the styling for all third-level headings in your emails.
            * @style heading 3
            */
            h3, .h3{
                 color:#202020;
                display:block;
                 font-family:Arial;
                 font-size:26px;
                 font-weight:bold;
                 line-height:100%;
                margin-top:0;
                margin-right:0;
                margin-bottom:10px;
                margin-left:0;
                 text-align:left;
            }

            /**
            * @tab Page
            * @section heading 4
            * @tip Set the styling for all fourth-level headings in your emails. These should be the smallest of your headings.
            * @style heading 4
            */
            h4, .h4{
                 color:#202020;
                display:block;
                 font-family:Arial;
                 font-size:16px;
                 font-weight:normal;
                 line-height:100%;
                margin-top:0;
                margin-right:0;
                margin-bottom:10px;
                margin-left:0;
                 text-align:left;
            }

            /* /\/\/\/\/\/\/\/\/\/\ STANDARD STYLING: HEADER /\/\/\/\/\/\/\/\/\/\ */

            /**
            * @tab Header
            * @section header style
            * @tip Set the background color and border for your email's header area.
            * @theme header
            */
            #templateHeader{
                 background-color:#FFFFFF;
                 border-bottom:0;
            }

            /**
            * @tab Header
            * @section header text
            * @tip Set the styling for your email's header text. Choose a size and color that is easy to read.
            */
            .headerContent{
                 color:#202020;
                 font-family:Arial;
                 font-size:34px;
                 font-weight:bold;
                 line-height:100%;
                 padding:0;
                 text-align:center;
                 vertical-align:middle;
            }

            /**
            * @tab Header
            * @section header link
            * @tip Set the styling for your email's header links. Choose a color that helps them stand out from your text.
            */
            .headerContent a:link, .headerContent a:visited, /* Yahoo! Mail Override */ .headerContent a .yshortcuts /* Yahoo! Mail Override */{
                 color:#336699;
                 font-weight:normal;
                 text-decoration:underline;
            }

            #headerImage{
                height:auto;
                max-width:600px !important;
            }

            /* /\/\/\/\/\/\/\/\/\/\ STANDARD STYLING: MAIN BODY /\/\/\/\/\/\/\/\/\/\ */

            /**
            * @tab Body
            * @section body style
            * @tip Set the background color for your email's body area.
            */
            #templateContainer, .bodyContent{
                 background-color:#FFFFFF;
            }

            /**
            * @tab Body
            * @section body text
            * @tip Set the styling for your email's main content text. Choose a size and color that is easy to read.
            * @theme main
            */
            .bodyContent div{
                 color:#505050;
                 font-family:Arial;
                 font-size:13px;
                 line-height:120%;
                 text-align:left;
                 margin-left: 10px
            }

            /**
            * @tab Body
            * @section body link
            * @tip Set the styling for your email's main content links. Choose a color that helps them stand out from your text.
            */
            .bodyContent div a:link, .bodyContent div a:visited, /* Yahoo! Mail Override */ .bodyContent div a .yshortcuts /* Yahoo! Mail Override */{
                 color:#336699;
                 font-weight:normal;
                 text-decoration:underline;
            }

            .bodyContent img{
                display:inline;
                height:auto;
            }

            /* /\/\/\/\/\/\/\/\/\/\ STANDARD STYLING: FOOTER /\/\/\/\/\/\/\/\/\/\ */

            /**
            * @tab Footer
            * @section footer style
            * @tip Set the background color and top border for your email's footer area.
            * @theme footer
            */
            #templateFooter{
                 background-color:#FFFFFF;
                 border-top:0;
            }

            /**
            * @tab Footer
            * @section footer text
            * @tip Set the styling for your email's footer text. Choose a size and color that is easy to read.
            * @theme footer
            */
            .footerContent div{
                 color:#707070;
                 font-family:Arial;
                 font-size:12px;
                 line-height:125%;
                 text-align:left;
            }

            /**
            * @tab Footer
            * @section footer link
            * @tip Set the styling for your email's footer links. Choose a color that helps them stand out from your text.
            */
            .footerContent div a:link, .footerContent div a:visited, /* Yahoo! Mail Override */ .footerContent div a .yshortcuts /* Yahoo! Mail Override */{
                 color:#336699;
                 font-weight:normal;
                 text-decoration:underline;
            }

            .footerContent img{
                display:inline;
            }

            /**
            * @tab Footer
            * @section social bar style
            * @tip Set the background color and border for your email's footer social bar.
            * @theme footer
            */
            #social{
                 background-color:#FAFAFA;
                 border:0;
            }

            /**
            * @tab Footer
            * @section social bar style
            * @tip Set the background color and border for your email's footer social bar.
            */
            #social div{
                 text-align:center;
            }

            /**
            * @tab Footer
            * @section utility bar style
            * @tip Set the background color and border for your email's footer utility bar.
            * @theme footer
            */
            #utility{
                 background-color:#FFFFFF;
                 border:0;
            }

            /**
            * @tab Footer
            * @section utility bar style
            * @tip Set the background color and border for your email's footer utility bar.
            */
            #utility div{
                 text-align:center;
            }

            #monkeyRewards img{
                max-width:190px;
            }
        </style>
    </head>
    <body leftmargin="0" marginwidth="0" topmargin="0" marginheight="0" offset="0">
        <center>
            <table border="0" cellpadding="0" cellspacing="0" height="100%" width="100%" id="backgroundTable">
                <tr>
                    <td align="center" valign="top">
                        <table border="0" cellpadding="0" cellspacing="0" width="600" id="templateContainer">
                            <tr>
                                <td align="center" valign="top">
                                    <!-- // Begin Template Header \\ -->
                                    <table border="0" cellpadding="0" cellspacing="0" width="600" id="templateHeader">
                                        <tr>
                                            <td class="headerContent">

                                                <!-- // Begin Module: Standard Header Image \\ -->
                                                <img src="images/header-bg.png" />
                                                <a href="#"><img src="images/social-events.png" style="float:right;padding-right:25px;" /></a>
                                                <a href="https://www.facebook.com/TheCooksNook?fref=ts"><img src="images/social-fb.png" style="float:right;padding-right:3px;" /></a>
                                                <!-- // End Module: Standard Header Image \\ -->
                                            <a href="#"><img src="images/logo.png" style="float:left;padding-top:20px;padding-left:30px;" /></a>
                                            <br /><br /><div style="float:right;">
                                                    <h1 style="padding-right:25px;text-align:right;margin-top:30px;"><strong>Holiday Hours:</strong>&nbsp;Monday-Friday&nbsp;9am-8pm</h1>
                                                    <h1 style="padding-right:25px;text-align:right;">Saturday&nbsp;9am-5pm&nbsp;&bull;&nbsp;Sunday&nbsp;1pm-5pm</h1>
                                                </div>

                                            </td>                                                                                       
                                        </tr>                                       
                                    </table>
                                    <!-- // End Template Header \\ -->
                                </td>
                            </tr>
                            <tr>
                                <td align="center" valign="top">
                                    <!-- // Begin Template Body \\ -->
                                    <table border="0" cellpadding="0" cellspacing="0" width="600" id="templateBody">
                                        <tr>
                                                <a href="#"><img src="images/butn-home.png" style="padding-top:15px;" /></a>
                                                <a href="#"><img src="images/butn-about-us.png" /></a>
                                                <a href="#"><img src="images/butn-in-store-coupons.png" /></a>
                                                <a href="#"><img src="images/butn-photo-gallery.png" /></a>
                                                <a href="#"><img src="images/butn-recipe-blog.png" /></a> 
                                                <a href="#"><img src="images/butn-contact-us.png" /></a>
                                            <td valign="top" class="bodyContent">                                                                                
                                                <!-- // Begin Module: Standard Content \\ -->
                                                <table border="0" cellpadding="20" cellspacing="0" width="100%">
                                                    <tr>
                                                        <td valign="top" style="padding-bottom:0px;">
                                                            <div>
                                                                A few years back (1998), one of our employees baked and brought this coffee cake recipe to all of us at the store.  We have had numerous calls over the years from people who misplaced this recipe and wanted to see if they could still get it from us.
                                                                <br /><br />
                                                                <h4>Cindy's Coffee Cake</h4>
                                                                <img src="images/featured-image.png" style="float:left;margin-top:5px;"/>                                                                          
                                                                <span style="line-height:110%;">     
                                                                           &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&bull; 1 yellow cake mix<br />
                                                                           &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&bull; 1 cup sour cream<br />
                                                                           &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&bull; 3 eggs<br />
                                                                           &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&bull; 1 cup pecans<br />
                                                                           &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&bull; ¼ cup water<br />
                                                                           &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&bull; ¾ cup brown sugar<br />
                                                                           &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&bull; 1 teaspoon cinnamon<br />
                                                                           &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&bull; ¾ cup melted margarine<br />
                                                                           &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&bull; 1 ¼ cups graham cracker crumbs<br /><br />
                                                                </span>                                                                             


                                                                Grease and flour a 10-inch round cake pan.  In a large bowl, combine cracker crumbs, nuts, brown sugar, cinnamon and margarine.  Set aside.  In another bowl, pour cake mix, sour cream, water and eggs.  Mix at low speed until moist, then beat at high speed for two minutes.  Pour half the batter into pan.  Sprinkle half crumb mix on top, then repeat with batter and crumb mix.  Bake at 350 degrees for 30 – 40 minutes until done.  Cool upright for 10 – 15 minutes.  Invert on plate.  Cool.  Glaze with powdered sugar and milk.                                                            </div>
                                                                <div style="margin-top:25px;"><center>
                                                                <img src="images/coupon-1.png" style="" />
                                                                <img src="images/coupon-2.png"  style="padding-left:15px;"/></center>
                                                                </div>                                            
                                                                <div style="float:right;padding-right:30px;padding-top:20px;">
                                                                    <a href="#"><img src="images/butn-view-print-coupons.png" /></a>
                                                                </div>                   
                                                        </td>
                                                    </tr>
                                                </table>
                                                <!-- // End Module: Standard Content \\ -->

                                            </td>
                                        </tr>
                                    </table>
                                    <!-- // End Template Body \\ -->
                                </td>
                            </tr>
                            <tr>
                                <td align="center" valign="top">
                                    <!-- // Begin Template Footer \\ -->
                                    <table border="0" cellpadding="10" cellspacing="0" width="600" id="templateFooter">
                                        <tr>
                                            <td valign="top" class="footerContent">                                            
                                                <!-- // Begin Module: Standard Footer \\ -->
                                                <table border="0" cellpadding="10" cellspacing="0" width="100%">
                                                    <tr>
                                                        <td colspan="2" valign="middle" id="utility"  style="padding-top:2px;">
                                                            <div>
                                                                <img src="images/footer-bg.png" />
                                                            </div>
                                                        </td>
                                                    </tr>                                                    
                                                </table>
                                                <!-- // End Module: Standard Footer \\ -->                                            
                                           </td>
                                        </tr>
                                    </table>
                                    <!-- // End Template Footer \\ -->
                                </td>
                            </tr>
                        </table>
                        <br />
                    </td>
                </tr>
            </table>
        </center>
    </body>
</html>

【问题讨论】:

  • 您在哪些邮件客户端中看到了这个神秘的填充?
  • 您的意思是容器左侧的 10px 边距(.bodyContent div)吗?编辑:在这种情况下,我认为解释您正在寻找的内容的屏幕截图会很有帮助。
  • 张贴the same question 不太可能给你一个好的答案。它将被标记、关闭,并且很可能会被否决,因此您将失去一些声誉。
  • 这不是同一个问题,看看代码,你会发现代码不一样。在问题的开头,它指出有 2 个时事通讯,这是第二个。

标签: html css padding cellpadding


【解决方案1】:

对我来说避免不良行为的最佳方法是设置“table-layout:fixed;”在表格上并使用元素设置列宽度。

另外,我想您正在使用某种工具将您的样式标签转换为内联 css。我建议不要这样做,这会生成大量不必要的代码,从而增加您的电子邮件的分量。

【讨论】:

  • 我一直打算重新组织代码,它更加混乱,因为我在最后一刻进行了一些调整并且没有像它应该的那样清理它。我一定会清理代码并尝试您的建议。为了帮助澄清,我将发布一个屏幕截图,这是我应该想到的 @isotrope。