如何在div中包含导入的css

时间:2015-02-11 18:06:04

标签: javascript jquery html css angularjs

我正在使用Angular加载电子邮件(通过gmail的api):

<div class="email-body">
  <div compile-html data-html="thread.message.body"></div>
</div>

当我这样做时,加载的电子邮件会带来影响整个网站css的css样式。

例如,我的css:

.container {
  width: 80%;
}

但是一封电子邮件(一旦加载)就会带来以下css:

.container {
  width: 20% !important;
}

.container的css被新加载的css覆盖。有没有办法在div(email-body)中包含导入的css?

1 个答案:

答案 0 :(得分:1)

这可能不是最快的方法,但是在没有iframe的情况下完成工作(使用javascript和jquery):

  $('.email-body').find('*').each(function () {
    if ($(this).css("width")) {
      var setWidth = $(this).css("width");

      //clearing width value
      setWidth = setWidth.replace(/[^0-9]/g, '');

      $(this).css("width", NEW WIDTH VALUE HERE);
    }
  })

如果您使用的是Angular,则可能需要将其包装在$ timeout中。