欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

HTML5 的 hidden="hidden" 和CSS的 display:none有什么区别?

程序员文章站 2022-05-04 22:09:30
...

回复内容:

HTML5 的 hidden="hidden" 和CSS的 display:none有什么区别?
效果上没有什么不同,但是只要是写在 CSS 里面的都只是纯展现,可以不遵循任何道理(比如 display,狗都可以伪装成猴的样子),而 HTML 则可能带有语义。

hidden 表示该元素是不相关的、不需要的,这个含义是主要内容,“隐藏”的效果只是附带。也许看上去跟 display: none 没有任何区别,但是在我们不知道的地方,比如屏幕阅读器或其他一切依赖语义的地方,可能就有它的价值体现。

更多信息可参考:hidden - HTML (HyperText Markup Language) 不管什么情况,你知道一个原则就 OK 了:

HTML 是内容展示带有语义,CSS 是界面样式相关。

那么 hidden 这个属性,就表示与浏览者不相关、不重要,浏览器在解析的时候,既然不相关就直接隐藏掉了。如果你有些东西与用户不相关,比如 提交信息的 input 等,就可以用 hidden。

display none 就是从界面、视觉上的隐藏。如果你需要临时隐藏一些东西后面会再切换出来,比如 下拉菜单 等,就可以用 display none。因为它不是跟用户不相关,只是目前还不能展示出来。 没区别,几乎一模一样。
html5这么多知识点需要学习和掌握,建议不要在这样无关紧要的地方抠细节,没有太大意义。