首页 > 试题广场 >

下列说法正确的有

[不定项选择题]
下列说法正确的有:()
  • visibility:hidden; 所占据的空间位置仍然存在,仅为视觉上的完全透明;
  • display:none; 不为被隐藏的对象保留其物理空间;
  • visibility:hidden; 与 display:none; 两者没有本质上的区别;
  • visibility:hidden; 产生 reflow 和 repaint(回流与重绘);
推荐
AB, display:none指的是元素完全不陈列出来,不占据空间,涉及到了DOM结构,故产生reflow与repaint

visibility:hidden指的是元素不可见但存在,保留空间,不影响结构,故只产生repaint

编辑于 2017-03-19 10:08:03 回复(0)
AB visiblity:看不见,摸的着. display:看不见,摸不着. display是dom级别的,可以渲染和重绘。 visiblity不是dom级别的,不能重绘,只能渲染
编辑于 2017-01-31 16:36:12 回复(1)
Reflow 的成本比 Repaint 的成本高得多的多。DOM Tree 里的每个结点都会有 reflow 方法,一个结点的 reflow 很有可能导致子结点,甚至父点以及同级结点的 reflow。 
当你增加、删除、修改 DOM 结点时,会导致 Reflow 或 Repaint。 
当你移动 DOM 的位置,或是搞个动画的时候。 
当你修改 /删除CSS 样式的时候。 
当你 Resize 窗口的时候(移动端没有这个问题),或是滚动的时候。 
当你修改网页的默认字体时。 
当你设置 style 属性的值 (Setting a property of the style attribute)。 
注:display:none 会触发 reflow,而 visibility:hidden 只会触发 repaint,因为没有发现位置变化。
发表于 2017-10-10 10:02:20 回复(0)
回流一定伴随着重绘,而重绘却可以单独出现 display:none指不占据空间,涉及到了DOM结构,故产生reflow与repaint visibility:hidden指的是元素不可见但存在,保留空间,不影响结构,故只产生repaint 首先我们要明白的是,页面的显示过程分为以下几个阶段: 1、生成DOM树(包括display:none的节点) 2、在DOM树的基础上根据节点的集合属性(margin,padding,width,height等)生成render树(不包括display:none,head节点,但是包括visibility:hidden的节点) 3、在render树的基础上继续渲染颜色背景色等样式 reflow:当render树的一部分或者全部因为大小边距等问题发生改变而需要重建的过程,叫做回流 repaint:当诸如颜色背景等不会引起页面布局变化,而只需要重新渲染的过程叫做重绘
编辑于 2019-05-09 09:00:48 回复(0)
overflow:hidden相当于剪切掉超出的部分,超出的不占用空间; visibility:hidden只是将元素隐藏起来,仍然先用空间,相当于穿了隐身衣; display:none不占用空间,也就是看不到摸不着
发表于 2021-03-17 18:36:18 回复(0)
3点 1.display脱离文档流 visibility不脱离 2.display脱离之后,涉及重绘repaint与回流reflow;visibility只有重绘没有回流,后者性能较好。 3.株连性 dispaly:none其本身与其后代都会消失,而在visibility:hidden中,子元素设置属性visibility:visiable,子元素是可以显示的。
发表于 2017-08-27 17:13:38 回复(0)
发表于 2023-02-25 23:21:40 回复(0)
袁老师注释:答案a也错了,透明触发事件,而visibility:hidden不触发事件。其实这些题大多数出的并不好,不要太当真。
发表于 2022-10-19 09:57:08 回复(0)
请问B错在哪? display: none; 设置后的确不会保留物理空间

发表于 2022-02-22 12:14:32 回复(1)
AB, display:none指的是元素完全不陈列出来,不占据空间,涉及到了DOM结构,故产生reflow与repaint visibility:hidden指的是元素不可见但存在,保留空间,不影响结构,故只产生repaint
发表于 2021-08-01 14:43:18 回复(0)
AB, display:none指的是元素完全不陈列出来,不占据空间,涉及到了DOM结构,故产生reflow与repaint visibility:hidden指的是元素不可见但存在,保留空间,不影响结构,故只产生repaint
发表于 2020-09-11 08:44:35 回复(0)
元素的显示与不显示
发表于 2020-07-22 19:35:18 回复(0)
D项,不影响回流与重布局,只影响重绘
发表于 2020-03-13 15:17:52 回复(0)
display:none;不保留空间。所以产生重构和回流 overflow:hidden;保留空间。所以只产生回流
发表于 2019-05-17 11:19:10 回复(0)
 display:none是元素完全看不见,不占据内存空间,跟dom结构有联系,会产生回流和重塑,

visibility:hidden是指元素看不见,但确实存在,占据空间,与dom结构无关,故只产生重塑

发表于 2018-02-28 09:42:19 回复(0)
visibility:hidden;产生reflow和repaint(回流与重绘)
发表于 2017-10-19 18:38:14 回复(0)
visibility是DOM级,不能重绘,只能渲染
发表于 2017-04-29 20:37:22 回复(0)
display:none; 使用该属性后,HTML元素(对象)的宽度、高度等各种属性值都将“丢失”; visibility:hidden; 使用该属性后,HTML元素(对象)仅仅是在视觉上看不见(完全透明),而它所占据的空间位置仍然存在,也即是说它仍具有高度、宽度等属性值。
发表于 2017-03-24 16:47:19 回复(0)
A B正确
发表于 2017-03-03 11:18:13 回复(0)
AB正确,C错,D不清楚
发表于 2017-02-07 18:56:24 回复(0)
A
发表于 2017-01-24 00:35:28 回复(0)