1.visibility、display、opacity的区别是什么
visibility属性规定元素是否可见,其中visible为元素可见,hidden为元素不可见
相同点:visibility:hidden, display:none, opacity:0 都能隐藏dom元素
不同点:
(1)visibility跟opacity是不会改变dom页面,位置不变,只是看不见。
display会改变dom页面,dom元素会从页面移除
(2)事件操作:visibility、display不会触发任何事件,
opacity可以触发事件如点击事件
2.重排与重绘
重排必定会引发重绘,但重绘不一定会引发重排
重排:当渲染树中的一部分(或全部)因为元素的规模尺寸,布局,隐藏等改变而需要重新构建, 这就称为回流(reflow)。每个页面至少需要一次回流,就是在页面第一次加载的时候