正在获取继承的style.display属性



使用纯JS,我需要确定从更高级别继承的元素的显示属性。

元素是嵌套在字段集中的输入,父字段集的显示属性可能设置为none,如果是这样,我需要检测该条件。

我已经尝试获取element.style.display属性,但由于它是继承的,所以无法满足我的需要??

有什么想法吗??

根据CSS规则,display属性不会被继承(除非它可以显式设置为值inherit)。

如果一个元素有display: none,那么无论其display值是多少,都不会显示其子元素。要检测一个元素是否处于这种情况,您需要向上遍历文档树,并检查出所有祖先的计算样式(然后会有一个复杂的问题,即在IE 8之前,IE不支持window.getComputedStyle)。

所以这是可行的,但你确定没有更简单的方法吗?为什么你需要知道一个字段是否在一个没有显示的元素内(可能是由于你的设置)?

最新更新