【发布时间】:2011-04-04 05:29:45
【问题描述】:
我有一个 div 用于在需要时显示警报。
如果我想在一段时间后关闭它,我可以使用 display:none 还是应该使用 display:none 和 visibility:hidden?
一个或两个。
谢谢。
【问题讨论】:
-
display: none only 可以正常工作
我有一个 div 用于在需要时显示警报。
如果我想在一段时间后关闭它,我可以使用 display:none 还是应该使用 display:none 和 visibility:hidden?
一个或两个。
谢谢。
【问题讨论】:
视情况而定。如果您需要将空间留空,即该空间不会被其下方或周围的其他元素占用,则需要visibility: hidden。否则,使用display: none,这将允许其他元素移动到元素的位置。
没有理由同时使用两者。
【讨论】:
如果您的隐藏内容需要可供使用屏幕阅读器的人访问,例如,您不应该使用display: none 或visibility: hidden,因为两者都可能隐藏屏幕阅读器的内容。相反,您应该使用更易于访问的方法,例如以负边距将内容移出屏幕。有关详细信息,请参阅以下链接:
456 Berea Street: Hiding with CSS: Problems and solutions
WebAIM Blog: Hiding content for screen readers
【讨论】:
Visibility:hidden 隐藏元素,但它仍然占用布局中的空间。 Display:none 完全删除它。
在你的情况下,我会使用 Display:none
【讨论】: