在我的课堂上,我在玩耍时发现 CSS 可以与合成元素一起使用。
例子:
imsocool { color:blue; } <imsocool>HELLO</imsocool>
当我的教授第一次看到我使用它时,他对虚构元素的工作感到有点惊讶,并建议我将所有虚构元素简单地更改为带有 ID 的段落。
为什么我的教授不希望我使用虚构的元素?他们有效地工作。
另外,他为什么不知道存在合成元素并与 CSS 一起使用。它们不常见吗?
为什么 CSS 可以处理虚假元素?
(大多数)浏览器被设计为(在某种程度上)与未来添加的 HTML 向前兼容。无法识别的元素被解析到 DOM 中,但没有与之关联的语义或专门的默认呈现。
当向规范中添加新元素时,有时 CSS、JavaScript 和 ARIA 可用于在旧浏览器中提供相同的功能(并且元素必须出现在 DOM 中,这些语言才能操作它们以添加该功能)。
(虽然应该指出,定义一种使用自定义元素扩展 HTML的方法的工作正在进行中,但这项工作目前处于开发的早期阶段,因此在成熟之前应该避免它。)
为什么我的教授不希望我使用虚构的元素?
还; 为什么他不知道虚构元素的存在并与 CSS 一起使用。它们不常见吗?
是的。人们不使用它们,因为它们有上述问题。