[英]which HTML tags “support” background-color
如何获取/产生所有背景元素有意义的HTML元素(标记名)的列表?
例如,DIV应该在列表中,但LINK应该不在列表中。
(我需要这样做来优化覆盖整个DOM的chrome扩展并计算新的背景色值)
在详细讨论了具体行为的实际含义之后,我认为已经证明,任何元素(包括虚构元素)都可以设置背景,就像规范中所说的那样。
因此,也许您的chrome扩展程序应该检查元素是否具有display: none
, height: 0
或width: 0
并根据这些条件将它们从列表中排除。 即,排除隐藏的元素以防止在视口中显示。
根据规范 ,所有元素都可以具有background
和background-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.