显示属性与可见性属性有何不同?

推荐答案

visibility属性只告诉浏览器是否显示元素.它要么是可见的(visible-你能看到),要么是不可见的(hidden-你看不见).

属性告诉浏览器绘制并显示一个元素,如果有的话-它是否应该被显示为inline个元素(即,它与文本和其他内联元素一起流动)、block级元素(即,它具有可以设置的高度和宽度属性、它是可浮动的等)、或者inline-block(即,它充当挡路框,但改为被内联放置)和一些其他元素(list-itemtabletable-rowtable-cellflex等).(=

当您将某个元素设置为display: block时,但当您将其设置为also时,浏览器仍然会将其视为挡路元素,除非您只是看不到它.有点像你把一个红色的盒子堆在一个看不见的盒子上面:红色的盒子看起来像是漂浮在半空中,而实际上它坐在一个你看不见的物理盒子的上面.

换句话说,这意味着包含display而不是none的元素仍然会影响页面中的元素流,无论它们是否可见.包含display: none的元素周围的框将表现为该元素从未存在过(尽管它保留在DOM中).

Css相关问答推荐

网格布局剪辑路径帮助(中间图像消失)

Tailwind CSS:如何使图像从迪夫中弹出

如何在移动屏幕尺寸上包装元素?

如何仅使用CSS Select 器根据列表中第n个项的子项属性 Select 该项

如何使用CSS滚动驱动动画重复时间轴范围

两列网格中左列第一个文本正下方的按钮

滚动弹性盒

为什么align-content:start应用于单行项目?

使 MUI 自动完成打断长词以适合布局

条件宽度和省略号不适用于样式化组件 - React.js

在 css Select 器中匹配 unicode char

CSS Slanding Div 边缘在图像上

关键帧不能动画回来

全部:初始与使用 CSS 重置

如何在 nth-child 中正确传递 CSS 变量?

在 CSS 或 JavaScript 中反转图像的 colored颜色

如何在 CSS 中绘制一个圆形扇区?

Select 标签的占位符

跨域 iframe 调整大小

bootstrap.css 和 bootstrap-theme.css 有什么区别?