一尘不染

为什么CSS可以处理假元素?

css

在课堂上,我在玩耍,发现CSS可以与虚构元素一起使用。

例:

imsocool {

    color:blue;

}


<imsocool>HELLO</imsocool>

当我的教授第一次看到我使用此功能时,他对组合元素起作用感到惊讶,并建议我将所有组合元素更改为带有ID的段落。

为什么我的教授不希望我使用虚构元素?他们有效地工作。

另外,他为什么不知道组成元素存在并且可以与CSS一起使用。他们不常见吗?


阅读 294

收藏
2020-05-16

共1个答案

一尘不染

为什么CSS可以处理假元素?

(大多数)浏览器被设计为(在某种程度上)与将来添加的HTML向前兼容。无法识别的元素被解析到DOM中,但是没有语义或与之关联的专用默认呈现。

当在规范中添加新元素时,有时CSS,JavaScript和ARIA可用于在旧版浏览器中提供相同的功能(这些元素必须出现在DOM中,以使这些语言能够操纵它们以添加该功能)。

(尽管应该注意的是,正在定义一种使用自定义元素扩展HTML的方法,但是这项工作目前处于开发的早期阶段,因此,在成熟之前应该避免使用它。)

为什么我的教授不希望我使用虚构元素?

  • HTML规范不允许使用它们
  • 它们可能与同名的将来标准元素冲突
  • 可能存在一个更适合该任务的HTML元素

也; 他为什么不知道虚构元素存在并与CSS一起使用。他们不常见吗?

是。人们不使用它们,因为它们存在上述问题。

2020-05-16