【问题标题】:Is there any way to set ::before element style in html tag? [duplicate]有没有办法在 html 标签中设置 ::before 元素样式? [复制]
【发布时间】:2023-04-02 06:43:02
【问题描述】:

你可以像这样在css中设置html标签样式:

<div class="sample_style"></div>

.sample_style {
    position:absolute;
    ...
}

您可以像这样直接在 html 标签中执行此操作:

<div style="position: absolute; ..."></div>

但是之前的元素呢?

你可以像 .sample_style:before{} 这样在 css 中做,但我如何直接在 html 标签中设置呢?

【问题讨论】:

  • 简短回答:内联样式中不可能包含伪类。 boltclock 在我上面链接的问题中给出了很好的解释。
  • 你仍然可以使用style标签来指定HTML页面的样式。

标签: javascript html css


【解决方案1】:

无法使用内联伪类(如 :hover、:active、:before、...)(默认情况下)。 据我所知,存在一些解决方法,但不建议这样做。无论如何,它不适用于大多数浏览器。

解决方案:使用 CSS 类。无论如何这是最佳实践,并且比使用内联样式更好(可重复使用且不会弄乱您的 HTML)

【讨论】:

  • 有些时候内联样式很有用,例如当您不控制原始网页内容时,将自定义样式注入网页。因此,在解决方案无法使用 CSS 样式表的情况下,这个问题仍然有效。然而,这仍然不会改变问题的答案。
  • 我并不是说你不应该使用内联。然而,最好尽可能使用类,因为它在大多数情况下是有意义的。但是,是的,你是对的。
猜你喜欢
  • 1970-01-01
  • 2010-09-26
  • 1970-01-01
  • 1970-01-01
  • 2012-06-20
  • 2017-02-18
  • 2016-02-12
  • 2017-04-22
  • 1970-01-01
相关资源
最近更新 更多