CSS:后代元素的 visibility:visible 在祖先元素的 visibility:hidden 下依旧可见

今天在做网页的幻灯片时发现一个问题,就是在父元素设置隐藏时,也即 visibility:hidden,如果它下面的子元素设置了 visibility:visible,那么子元素依旧是可见的。

这点跟 display:none 之类的是不同的。而规范也确实是这么说的:

hidden: The generated box is invisible (fully transparent, nothing is drawn), but still affects layout. Furthermore, descendants of the element will be visible if they have ‘visibility: visible’.

CSS 2.1

特此记录。