面试题

块级元素:独占一行;可以设置padding,marigin;display;可以包含行内元素和行内快元素

行内元素:与其他元素在一水平面上,设置不了padding,margin;不可以包含块级元素

bfc:块级格式化上下文;独立的区域,内部元素按照他的规则渲染,不会和外部打交道

清楚内部浮动效果;垂直margin不会重叠,margin不会溢出,左边定宽,右边自适应

ifc,行内格式化上下文,行内元素垂直水平居中,段落

ffc,弹性布局:display:flex

gfc:网格布局:display:grid

重绘是颜色改变的时候

回流是页面渲染的时候,会一定引起重绘,页面第一次加载的时候,会一定发生回流

减少页面的重绘和回流,不去改变每个的样式,直接改变className

flex grow:瓜分剩余空间的的比重

flex basis 和width一样,权重比width大

flex shrink 空间不足时,定义子容器的压缩比例

元素垂直居中的方法:margin:0 auto;position:abulote;top:50%;left:50%;transform:translate(-50%,-50%);

display:flex;align-item:center

两列布局:两侧固定,中间自适应

流式布局:百分比布局

圣杯布局:固定header和footer,中间是个三栏布局,中间部分的高度是三栏中最高的区域

盒模型:content+padding+border+marigin

rem根据根元素,字体不适用于rem,通过媒体查询来实现

em根据父元素

vm/vh根据视图

css适配:

通过link标签的media属性指定不同的媒体类型

使用媒体查询

transition过度效果 property:名称;duration:时间;timing-function:速度曲线;delay:什么时间开始

transformm:rotate:旋转;translate:平移;sacle:缩放;skew倾斜

perspective 镜头到元素平面的距离z=0的平面上,perspective(300px)镜头距离元素表面位置是300px;像素越大,图越小

perspective-origin规定镜头在平面上的位置,默认是放在元素中间,镜头在z坐标固定时(perspective(0),perspective-origin:150px 150px是

右下;perspective-origin:-150px -150px是左上

animation动画属性 name duration timing-function delay iteration-count:执行次数;direction 是否应该轮流范放行播放动画

sessionStorage页面关闭,数据就会清空

localStorage,除非手动清理,数据会一直存在

Cookie:内存小只有4kb,如果没有设置过期时间,会保存到内存中,会随着浏览器关闭,生命周期也会结束,如果设置过期时间,被保存在硬盘中,浏览器关闭也不会结束,过期时间结束,才会消失

VUE

MVVM  model-view-viewModel简写,模型-视图-视图模型,双向绑定

model是后端传递的数据,view是页面,viewModel是view和model的桥梁

model转换为view,后端传递的数据转换成页面,数据绑定

view转换model,所看到的的页面转换为后端的数据,实现方式:DOM事件监听

MVC model-view-controller 模型-视图-控制器 controller是指页面业务逻辑

MVC是单向通信,视图和模型通过controller承上启下

mvvm实现的业务逻辑组件的重用,让开发更高校,结构更清晰,增加代码的复用性

mvvm主要解决了mvc中大量的dom操作使页面渲染性能降低,加载速度变慢,影响用户体验

区别:vue数据驱动,通过数据来显示视图层而不是节点操作

vue生命周期 beforeCreate(数据对象data,挂载元素el都为undefined,未初始化)、created(数据对象data出来了,el还没有)、beforeMount,(实例的$el和data都初始化了,但是还没有挂载之前都是虚拟阶段,data。message还未 替换),Mounted(vue实例挂载完成,data.mesaage渲染成功)、beforeuplode() ,uploaded,beforeDestroy(销毁前),destored(销毁后,对data改变不会触发周期函数,vue市里已经结束事件监听一级dom绑定,dom结构依然存在)

生命周期就是vue实例从创建到销毁的过程,创建-初始化-编译模板-挂载dom-渲染-更新-渲染,卸载等一系列过程

生命周期作用:有多个事件钩子,让我们在控制整个vue实例过程中更容易形成好的逻辑

创建前后,载入前后,更新前后,销毁前后

created:实例已经创建完成之后调用,

mounted,el被新创建的vm。$el替换病挂载到实例上去之后调用该钩子,

actived:keep-alive组件激活时调用

mounted已经完成dom渲染

你可能感兴趣的:(面试题)