0
点赞
收藏
分享

微信扫一扫

关于 JS 动画和 css3 动画的差异性

关于 JS 动画和 css3 动画的差异性

参考回答:
渲染线程分为 main thread 和 compositor thread,如果 css 动画只改变 transform 和 opacity, 这时整个 CSS 动画得以在 compositor trhead 完成(而 JS 动画则会在 main thread 执行,然 后出发 compositor thread 进行下一步操作),特别注意的是如果改变 transform 和 opacity 是不会 layout 或者 paint 的。
区别:功能涵盖面,JS 比 CSS 大
实现/重构难度不一,CSS3 比 JS 更加简单,性能跳优方向固定 对帧速表现不好的低版本浏览器,css3 可以做到自然降级
css 动画有天然事件支持
css3 有兼容性问题

说一下块元素和行元素

参考回答:
块元素:独占一行,并且有自动填满父元素,可以设置 margin 和 pading 以及高度和宽 度
行元素:不会独占一行,width 和 height 会失效,并且在垂直方向的 padding 和 margin 会失
效。

visibility=hidden, opacity=0,display:none

参考回答: opacity=0,该元素隐藏起来了,但不会改变页面布局,并且,如果该元素已经绑定一些 事件,如 click 事件,那么点击该区域,也能触发点击事件的 visibility=hidden,该元素 隐藏起来了,但不会改变页面布局,但是不会触发该元素已经绑定的事件 display=none, 把元素隐藏起来,并且会改变页面布局,可以理解成在页面中把该元素删除掉一样。

双边距重叠问题(外边距折叠)

参考回答:
多个相邻(兄弟或者父子关系)普通流的块元素垂直方向 marigin 会重叠 折叠的结果为: 两个相邻的外边距都是正数时,折叠结果是它们两者之间较大的值。 两个相邻的外边距都是负数时,折叠结果是两者绝对值的较大值。 两个外边距一正一负时,折叠结果是两者的相加的和。

举报

相关推荐

0 条评论