0

我想知道是否可以使用 Javascript 或其他方式将元素的样式恢复为“默认”状态。

我需要这样做,因为我将 HTML 插入到第 3 方网页中,并且无法控制它们赋予不同元素的样式。例如,他们可能有:

div {
  margin: 10px;
  padding: 5px;
  line-height: 10px;
  font-size: 150%;
  border: 10px solid yellow;
  foo: bar;
}

有没有一种简单的方法可以清除所有样式并将其设置回“默认”设置?甚至有默认样式列表吗?

谢谢

4

4 回答 4

1

似乎有人已经在 SO 上问过这个问题。

CSS Reset,常用元素的默认样式

于 2009-01-20T05:36:16.243 回答
0

默认样式由每个浏览器定义,您可以猜到,所有浏览器的样式都略有不同。您可以定义每个样式属性并将其分配给继承!重要:

div {
  margin: inherit !important;
  padding: inherit !important;
  line-height: inherit !important;
  font-size: inherit !important;
  border: inherit !important;
  foo: inherit !important;
}

我并不完全肯定这会奏效,所以我会环顾四周并尝试一下。

于 2009-01-20T05:34:01.567 回答
0

如果您可以上传自己的 CSS(或内部样式表),则可以设置元素的 id,这些样式将优先于通用 div{} 样式。

于 2009-01-20T08:44:27.733 回答
0

您始终可以使用所有默认样式规则定义一个 reset 或类似的类,然后使用 JS 将该样式应用于要重置的元素。例如

.reset {
  margin: 0 !important;
  color: #000 !important;
  ... etc ...
}

然后是一些 jQuery,例如:

$('div').addClass('reset');

也许会工作...

于 2009-01-20T17:24:36.530 回答