繁体   English   中英

哪些HTML标签“支持”背景色

[英]which HTML tags “support” background-color

如何获取/产生所有背景元素有意义的HTML元素(标记名)的列表?

例如,DIV应该在列表中,但LINK应该不在列表中。

(我需要这样做来优化覆盖整个DOM的chrome扩展并计算新的背景色值)

更新

在详细讨论了具体行为的实际含义之后,我认为已经证明,任何元素(包括虚构元素)都可以设置背景,就像规范中所说的那样。

因此,也许您的chrome扩展程序应该检查元素是否具有display: noneheight: 0width: 0并根据这些条件将它们从列表中排除。 即,排除隐藏的元素以防止在视口中显示。


根据规范 ,所有元素都可以具有backgroundbackground-color 但是, <body>内不允许某些元素,因此永远不应在网页上显示。 我不知道其中哪一个(或为什么!)根本不渲染背景或颜色,但是扩展名可以跳过这些。

<base>
<link>
<meta>
<noscript>
<script>
<style>
<template>
<title>

可能还有更多通常不会显示的元素,但是这些元素来自HTML5规范的“元数据”部分。

规范说了所有要素 但是您必须考虑是否有意义:)

https://www.w3.org/TR/CSS2/colors.html#background-properties

Value:      <color> | transparent | inherit
Initial:    transparent
Applies to:     all elements
Inherited:      no
Percentages:    N/A
Media:      visual
Computed value:     as specified

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM