【问题标题】:Applying a CSS style to all HTML tags with Stylus使用 Stylus 将 CSS 样式应用于所有 HTML 标签
【发布时间】:2019-08-07 00:44:11
【问题描述】:

我想使用 Stylus 隐藏所有图像。我有一个非常小的脚本,我把它放在一起非常适合 img 元素,但我正在努力让它也适用于背景图像。看起来我必须为每种类型制作一个特殊情况。

例如,启用此脚本后,旧的 buildapcsales reddit 页面 (https://old.reddit.com/r/buildapcsales/) 上仍显示图像。这是因为background-image 仅应用于divbody::before 元素,因为它们是我在脚本中指定的唯一元素。我想将此background-image 样式应用于页面上的所有 HTML 元素。

到目前为止,我的 Stylus 脚本看起来是这样的。

img {
    display:none !important;
    height: 0 !important;
    width: 0 !important;
  }

div {
    background-image: none !important;
}

body::before {
    background-image: none !important;
}

这适用于大多数页面。对于我链接的页面(和其他页面),它不适用于所有 HTML 元素。 img 部分应用于所有 HTML img 元素,但 background-image 仅应用于指定元素。在隐藏section 的同时(这是此页面上的问题),我正在寻找一种通用方法来隐藏所有背景图像或将我的样式更改应用于所有 HTML 元素/类?我尝试使用 * 的各种选项将更改应用于所有孩子,但这没有帮助。例如,这什么都不做。

* {
    background-image: none !important;
}

* > * {
    background-image: none !important;
}

我不想按名称定位特定类。

【问题讨论】:

  • 在问题中提供足够的信息。不要让我们离开网站,在大约 150 行通常缩小的 HTML 中猜测您到底指的是什么。在您的问题中添加minimal reproducible example 将是有益的。
  • @JonP 您甚至不需要查看外部页面。我不想让某些东西与特定页面一起工作,因为这意味着其他页面也必须发生同样的事情。我想将 CSS 样式应用于 Stylus 页面上的所有 HTML 元素。在这种情况下,我想将background-image: none !important 样式应用于页面上的所有 HTML 元素。所以问题是如何将样式应用于页面上的所有 HTML 元素?我已更新问题以使其更清楚。

标签: html css stylus


【解决方案1】:

可以使用简写background 属性指定一些背景。

* {
  background-image: none !important;
  background: none !important;
}

由于 CSS 选择器按 特异性 优先考虑,根据定义,您不能应用通用选择器。

【讨论】:

  • 我对此进行了测试。它没有帮助。它还具有删除所有背景元素而不仅仅是图像的副作用。
猜你喜欢
  • 2022-08-17
  • 2019-12-17
  • 2015-06-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-06-16
  • 2021-07-23
  • 2013-03-31
相关资源
最近更新 更多