【问题标题】:multiple class styles in separate css references单独的 css 引用中的多个类样式
【发布时间】:2017-08-31 16:00:36
【问题描述】:

从我解释别人的编码开始,这是电子邮件编码。

在以下代码中,表格单元格引用.full,图像代码引用.imageblock.icon,并且在我的CSS 中有一个特定的.full img 样式。我的问题是每种样式都有一些细微的不同,所以我怎么知道要编辑哪一个。此外,在 CSS 中有两个 .icon 引用。为什么这些是分开的而不是在一起的?

代码如下:

.full {
  display: block;
  width: 100%;
  !important
}

.full img {
  display: block;
  !important;
  width: 30% !important;
  margin: 0 auto !important;
}

.imageBlock {
  display: block !important;
  height: auto !important;
  width: 100% !important;
}

.icon {
  padding-left: 0 !important;
}

.icon {
  padding-left: 25px;
}
<td width="25%" dir="ltr" class="full">
  <img src="https://okcu-uga.edu.185r.net/graphics/okcu-uga/JSF201920/email/icon-badge.gif" width="100" height="100" class="imageBlock icon" />
</td>

【问题讨论】:

  • *编辑了 imageBlock 标签

标签: html css mobile html-email


【解决方案1】:

编辑.imageblock,因为该人已将属性强制到该选择器。 Here is more info about CSS Specificity

并且有两个.icon 规则,因为前一个开发人员不知道他在做什么:p,删除第二个。

【讨论】:

  • 经过一分钟的测试,你可以看到b在imageblock中是小写的,而在html中是大写的,所以强制属性对我来说只是很多调试,因为“我无法得到这个 css 位可以工作”
  • 我更新了原来的问题。小写的“b”是我打字时的错误,但重复的 .icon 不是。感谢您的建议。
【解决方案2】:

为什么它们是两个具有相同规则的 .icon ?也许编码器找不到第二个并写了第一个,设置重要以绕过第二个?

然后为了知道顺序,有一个神奇的方法是用开发工具打开它,如果用chrome检查img,我可以看到以下顺序:

.full img {
  display: block;
  width: 30% !important;
  margin: 0 auto !important;
}
.icon {
  overwritten by important rule below---padding-left: 25px;
}
.icon {
  padding-left: 0 !important;
}
.imageBlock {
  display: block !important;
  height: auto !important;
  width: 100% !important;
}
img[Attributes Style] {
  width: 100px;
  height: 100px;
}

上部优先于下部

最后,我知道这不是您的代码,但尽可能避免使用 !important,因为当您真正需要它们时,它们将不起作用。

【讨论】:

  • 我想知道为什么有两个对 .icon 的引用。此外,他们几乎将每条规则都标记为 !important。您认为这与电子邮件编码有关吗?也许他们希望电子邮件客户端正确呈现它?感谢您的建议,尽管这会有所帮助。我有一种感觉,虽然整个文件的最终结果很好,但它的编码有些混乱。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-27
  • 2011-06-28
  • 1970-01-01
相关资源
最近更新 更多