I am working in a Marketing Automation (Eloqua) system to deploy HTML emails and Landing Pages. Of recent, they have run some updates to their system and it has started populating an extra period inconsistently in front of one or two of my class declarations from the embedded style sheet. For example, my hosted code for HTML emails has an embedded style sheet at the top to render Responsive emails. In this style sheet I have certain class declarations. When these are being deployed I am witnessing an inconsistent error where the system will add an extra period in front of one or two of the class declarations (e.g. from .removePad to ..removePad) which obviously makes the class declaration not work. This extra period is consistent across all platforms/browsers. It is also inserting a line break just before the extra period, but as white space doesn't matter in HTML, that isn't anything more than maybe an extra clue in the scenario.
I have done extensive testing and have spent days with their support team. Their final offer of assistance to me was to tell me that my HTML was incorrect and that is why the extra period is getting inserted. Here are some snippets of what they are telling me is incorrectly written code. It revolves around setting padding and margins to 0. I have always been under the impression that when setting margins and padding to 0, a unit of measurement is not needed (e.g. margin: 0 auto; padding: 0; margin: 0; as opposed to margin: 0px auto; ... etc).
Said Code snippets:
body {width: 100%; background-color: #ffffff; margin:0; padding:0;}
.removePad {padding-right:0!important;padding-left:0!important;}
.resetType {font-size: 13px!important; line-height: normal!important; margin-top: 0;}
1: Am I incorrect in this assumption of not needing a unit of measure when setting to 0?
2: Has anyone ever witnessed anything like this inserting an line break/extra period?
3: I don't know much about what coding language their program would be written in, nor do I know complex coding languages, but does anyone know of a scenario in a coding language that would make this scenario happen?
If it were a matter of simply going in and putting a unit of measure in each of my attributes, I would do so and say good day. However, I have now witnessed and incident of this happening after doing just that, so I am confused, stumped and abandoned. Perhaps someone here could offer me a bit of insight or a direction to troubleshoot.
Thanks greatly for any thoughts!
UPDATE: entire CSS
<style type="text/css">
.ReadMsgBody {width: 100%; background-color: #ffffff;}
.ExternalClass {width: 100%; background-color: #ffffff;}
.ExternalClass, .ExternalClass p, .ExternalClass span, .ExternalClass font, .ExternalClass td, .ExternalClass div {line-height: 100%;}
body {width: 100%; background-color: #ffffff; margin:0; padding:0; -webkit-font-smoothing: antialiased;}
table {border-collapse:collapse;}
a:visited {color:#0085c3;}
@media only screen and (max-width: 640px) {
body[yahoo] .deviceWidth {width: 440px!important;}
body[yahoo] .tableWidth {width: 410px!important;}
body[yahoo] .hide {display: none!important;}
body[yahoo] .show {display: block!important; padding:0; width: auto !important; overflow: visible !important; max-height: inherit !important;}
body[yahoo] .borderRadius {border-radius: 10px;}
body[yahoo] .center {margin:0 auto;}
body[yahoo] .headline {font-size: 22px!important; color: #ffffff!important; background-color: #0085c3!important; border-top-left-radius: 5px; border-top-right-radius: 5px; padding-top: 15px!important; padding-left:15px!important; padding-right:15px!important;}
body[yahoo] .blueDivide {border-top: 2px solid #0085c3;}
body[yahoo] .borderGone {border-top: none; border-right:none !important; border-bottom: none; border-left:none !important;}
body[yahoo] .logo {height:60px; width:141px; padding-left: 15px;}
body[yahoo] .removePad {padding-right:0!important;padding-left:0!important;}
body[yahoo] .ctaButton {padding: 5px 10px; background-color: #0085ce !important; color: #ffffff !important; text-decoration: none !important; border-radius: 5px; width: 180px ; text-align: center !important; margin-top: 10px; display: block !important; margin: 0 auto;}
body[yahoo] .ctaButton2 {padding: 5px 10px; background-color: #0085ce !important; color: #ffffff !important; text-decoration: none !important; border-radius: 5px; width: 340px ; text-align: center !important; margin: 0 auto !important; display: block !important;}
body[yahoo] .resetType {font-size: 13px!important; line-height: normal!important; margin-top: 0}
body[yahoo] .topBox {border-top-left-radius: 10px; border-top-right-radius: 10px;}
body[yahoo] .bottomBox {border-bottom-left-radius: 10px!important; border-bottom-right-radius: 10px!important; border-bottom:#0085c3 solid 1px; border-right:#0085c3 solid 1px; border-left:#0085c3 solid 1px; padding-top: 15px; padding-left: 14px; padding-right: 14px;}
body[yahoo] .imagePad {padding-top: 5px; padding-bottom: 5px; padding-left: 14px; padding-right: 10px;}
body[yahoo] .rightPad {padding-right: 14px;}
body[yahoo] .salesBox {border-radius:5px; padding: 10px 0; margin-top:15px; background-color: #eeeeee;}
}
@media only screen and (max-width: 479px) {
body[yahoo] .deviceWidth {width:300px!important}
body[yahoo] .tableWidth {width:270px!important}
body[yahoo] .headline {font-size: 20px!important;}
body[yahoo] .ctaButton2 {padding: 5px 10px; background-color: #0085ce !important; color: #ffffff !important; text-decoration: none !important; border-radius: 5px; width: 180px ; text-align: center !important; margin: 0 auto !important; display: block !important;}
body[yahoo] .logo {height:50px; width:118px; padding-left: 10px;}
}
</style>