• 56.com面试


    什么是重绘与回流,页面渲染是重绘还是回流?

    回流何时发生:

    回流必将引起重绘,而重绘不一定会引起回流。

    1. 当Render tree中的一部分(或全部)因为元素的规模尺寸,布局,隐藏等改变而需要重新构建。这就称为回流(其实个人觉得叫重新布局更简单明了些)。每个页面至少需要一次回流,就是在页面第一次加载的时候。

    2. 当Render tree中的一些元素需要更新属性,而这些属性只是影响元素的外观,风格,而不会影响布局的,比如background-color。则就叫称为重绘。

    当页面布局和几何属性改变时就需要回流。下述情况会发生浏览器回流:

    1、添加或者删除可见的DOM元素;

    2、元素位置改变;

    3、元素尺寸改变——边距、填充、边框、宽度和高度

    4、内容改变——比如文本改变或者图片大小改变而引起的计算值宽度和高度改变;

    5、页面渲染初始化;

    6、浏览器窗口尺寸改变——resize事件发生时;

    1. 添加、删除元素(回流+重绘)

    2. 隐藏元素,display:none(回流+重绘),visibility:hidden(只重绘,不回流)

    (二者都是隐藏HTML元素,在视觉效果上没有区别,但在一些DOM操作中二者还是有所不同的。display:none;使用该属性后,HTML元素(对象)的宽度、高度等各种属性值都将“丢失”;visibility:hidden;使用该属性后,HTML元素(对象)仅仅是在视觉上看不见(完全透明),而它所占据的空间位置仍然存在,也即是说它仍具有高度、宽度等属性值。)

    3. 移动元素,比如改变top,left(jquery的animate方法就是,改变top,left不一定会影响回流),或者移动元素到另外1个父元素中。(重绘+回流)

    4. 对style的操作(对不同的属性操作,影响不一样)

    5. 还有一种是用户的操作,比如改变浏览器大小,改变浏览器的字体大小等(回流+重绘)

    html5新增的api接口有哪些?

    印象中的56.com的笔试题:

    第一道题是css选择器权重的问题,idclass,!Important

    两道布局题:一道是已知两个侧边栏的width,要求中间的能随着浏览器的大小变化宽度

    一道是:怎么样使三个容器看起来一样高,(自适应高度),可利用背景图,不能使用js

    一道算法题:怎么样使当前数组随机重排,要求不能回到原来的位置。

    一道优化题:关于addEventListeneratachEvent,如何能做到最佳优化,加载一次只判断一次

    其他的不记得了。

    面试题:什么是重绘和回流,什么时候会有重绘,什么时候会有回流?

    什么是同源策略,怎么样解决?

    知道cookie的跨域问题吗?如果想要使www.a.comwww.b.com都能使用cookie值,这个cookie该如何设置?Cookie有什么缺点?

    localStroagesessionStroage的存储方式是什么?

    Css3新增属性,html5的新增标签和新增的接口有哪些?

    用什么浏览器调试?F12里面的哪些功能用的最多?

    用什么开发工具?

  • 相关阅读:
    router基本使用
    函数声明 和 var声明的优先级
    适用于Windows桌面应用程序的.NET Core 3
    在.Net Core 3.0中尝试新的System.Text.Json API
    在WPF中使用.NET Core 3.0依赖项注入和服务提供程序
    WPF控件获得焦点时去除虚线框
    Call asynchronous method in constructor
    将自定义控件加载到RichTextbox并进行交互
    WPF应用无法使用Snoop分析的解决办法
    关于序列化和反序列化
  • 原文地址:https://www.cnblogs.com/obeing/p/5525101.html
Copyright © 2020-2023  润新知