visibility:hidden和display:none之间的区别是什么?

CSS规则visibility:hiddendisplay:none都会导致该元素不可见。这些是同义词吗?

解决办法

display:none意味着该标签根本不会出现在页面上(尽管你仍然可以通过dom与它互动)。 在其他标签之间不会有空间分配给它。

visibility:hidden意味着与display:none不同,该标签不可见,但页面上为其分配了空间。标签会被渲染,只是在页面上看不到。

比如说。

test | <span style="[style-tag-value]">Appropriate style in this tag</span> | test

用 "display:none "替换"[style-tag-value]"的结果是。

test |   | test

用 "visibility:hidden "替换"[style-tag-value]"的结果是:

test |                        | test
评论(14)

display:none将该元素从布局流中移除。

visibility:hidden隐藏它,但留下空间。

评论(0)

display: none将该元素从页面中完全移除,页面的构建就像该元素根本不存在一样。

Visibility: hidden`在文档流中留下空间,尽管你不再能看到它。

这可能会也可能不会产生很大的区别,这取决于你在做什么。

评论(1)