【问题标题】:CSS display:none and visibility:hiddenCSS显示:无和可见性:隐藏
【发布时间】:2011-04-04 05:29:45
【问题描述】:

我有一个 div 用于在需要时显示警报。

如果我想在一段时间后关闭它,我可以使用 display:none 还是应该使用 display:none 和 visibility:hidden?

一个或两个。

谢谢。

【问题讨论】:

  • display: none only 可以正常工作

标签: css hide hidden


【解决方案1】:

视情况而定。如果您需要将空间留空,即该空间不会被其下方或周围的其他元素占用,则需要visibility: hidden。否则,使用display: none,这将允许其他元素移动到元素的位置。

没有理由同时使用两者。

【讨论】:

    【解决方案2】:

    如果您的隐藏内容需要可供使用屏幕阅读器的人访问,例如,您不应该使用display: nonevisibility: hidden,因为两者都可能隐藏屏幕阅读器的内容。相反,您应该使用更易于访问的方法,例如以负边距将内容移出屏幕。有关详细信息,请参阅以下链接:

    456 Berea Street: Hiding with CSS: Problems and solutions
    WebAIM Blog: Hiding content for screen readers

    【讨论】:

    • 只是好奇,但您究竟为什么要隐藏内容,但屏幕阅读器仍然可以访问它?如果它被隐藏了,那是因为我目前不希望它显示出来。
    • @MrN00b 您可能出于审美原因隐藏内容,例如用户可以隐藏或显示的可折叠部分。
    【解决方案3】:

    Visibility:hidden 隐藏元素,但它仍然占用布局中的空间。 Display:none 完全删除它。

    在你的情况下,我会使用 Display:none

    【讨论】:

    • 没有显示:隐藏,有可见性:隐藏:)
    • 这就是我在喝咖啡前打字的结果!感谢您的捕获,我更新了我的帖子。 :)
    猜你喜欢
    • 1970-01-01
    • 2015-05-25
    • 2010-09-13
    • 2012-07-30
    • 2011-07-09
    • 2019-05-18
    • 1970-01-01
    • 2013-12-28
    • 2019-12-30
    相关资源
    最近更新 更多