1.如何居中div?
Div{ Background:red; Position:absulute; Top:50%; Left:50%; Transform:translate(-50%,-50%); }
2.居中一个浮动元素
.box{ position: relative; left:50%; float:left; } .item{ position: relative; left:-50%; float:left; background: red; }
3.什么是盒子模型
Html每个元素都会被渲染成一个盒子,盒子具备content,padding,border,margin 四个属性
IE盒子模型将border、padding归属于content
4.Css选择器有哪些?哪些属性可以继承?
id选择器、类选择器、标签选择器、通配选择器、伪对象选择器
可以继承的有 font-size font-family color
5.浏览器的内核分别是什么?
IE内核: Trident Firefox内核:Gecko Safari内核:Webkit Opera内核:Presto——>Blink
Chrome内核:Blink/Chromium
6.html5有哪些新特性,移除了哪些元素?
绘画 canvas ,用于媒介回放的 video 和 audio 元素,本地离线存储 localStorage
长期存储数据内容元素,article、footer、header、nav、section。
表单控件,calendar、date、time、email、url、search。
控件元素,webworker, websockt, Geolocation。
移出的元素有下列这些:
显现层元素:basefont,big,center,font, s,strike,tt,u。
性能较差元素:frame,frameset,noframes。
7.行内元素有哪些?块级元素有哪些?空元素有哪些?
(1)行内元素有:a( 锚点) ,b(粗体(不推荐)) ,span(常用内联容器,定义文本内区块) img(图片) input(输入框) select(项目选择)
strong(粗体强调) label(表格标签) cite (引用)code(计算机代码)
(2)块级元素有:div ul(无序列表) ol(有序列表) dl(定义列表) table(表格)form(表单) h1 (一级标题))p(段落)pre(预格式化)
(3)常见的空元素: br\ hr\img\ input\ link\meta
8.html5的canvas有什么用
Canvas 元素用于在网页上绘制图形,该元素标签强大之处在于 可以直接在 HTML 上进行图形操作,
9.html5如何实现离线储存?有什么特点?
本地离线存储 localStorage 长期存储数据内容元素
在html标签里通过manifest属性引用一个cache.manifest文件,该文件里声明了浏览器需缓存的所有资源文件
配置服务器支持 cache.manifest 的Content-type: manifest
编写 cache.manifest 文件
html页面引用cache.manifest文件
离线浏览--用户可在离线时使用它们。
速度--已经缓存的资源加载得更快。
减少服务器负载--浏览器将只从服务器下载更改过的资源。
10.添加、移动、移除、复制、创建和查找节点?
(1)创建新节点
createDocumentFragment() //创建一个DOM片
createElement() //创建一个具体的元素
createTextNode() //创建一个文本节点
(2)添加、移除、替换、插入
appendChild()
removeChild()
replaceChild()
insertBefore()
(3)查找
getElementsByTagName() //通过标签名称
getElementsByName() //通过元素的Name属性的值
getElementById() //通过元素Id,唯一性
11.Document和innerHtml的区别?
document.write是直接写入到页面的内容流,如果在写之前没有调用document.open,
浏览器会自动调用open。每次写完关闭之后重新调用该函数,会导致页面被重写。
innerHTML则是DOM页面元素的一个属性,代表该元素的html内容。你可以精确到某一个具体的元素来进行更改。
如果想修改document的内容,则需要修改document.documentElement.innerElement。
innerHTML将内容写入某个DOM节点,不会导致页面全部重绘
innerHTML很多情况下都优于document.write,其原因在于其允许更精确的控制要刷新页面的那一个部分。
12.请求跨域资源的方法有哪些?
JSONP\ proxy [ˈprɑːksi]代理\ Cors \ xdr \中转服务器+ajax 1、 通过jsonp跨域
2、 document.domain + iframe跨域
3、 location.hash + iframe
4、 window.name + iframe跨域
5、 postMessage跨域
6、 跨域资源共享(CORS)
7、 nginx代理跨域
8、 nodejs中间件代理跨域
9、 WebSocket协议跨域
13.$(document).ready和window.onload的区别?
$(document).ready:是DOM结构绘制完毕后就执行,不必等到加载完毕。
意思就是DOM树加载完毕,就执行,不必等到页面中图片或其他外部文件都加载完毕。并且可以写多个.ready。
window.onload:是页面所有元素都加载完毕,包括图片等所有元素。只能执行一次。
14.jQuery中的选择器有哪些?
Id、类、*、元素、集合
15.简单实现$.ajax
$.ajax({ type:"get", url:"http:/localhost:4002", dataType:"json", success:function(data){ show(data); }, error: function(err){ console.log(err); } })
16.jQuery添加元素的方法
1.append(); 在所选元素的结尾添加
2.prepend(); 在所选元素的开头添加
3.html(); 在所选元素内添加,如果元素内之前有别的内容会覆盖掉
4.after(); 在所选元素之后添加
5.before(); 在所选元素之前添加
6.text(); 在所选元素内添加文本内容
17.Active-class是哪个组件的属性?镶嵌路由怎么定义?
答:(active-class是vue-router模块的router-link组件中的属性,用来做选中样式的切换;)
嵌套路由是幻灯片的组件,router/index.js,我们把my,加了children,定义很多个子路由,子路由还可以继续嵌套路由。
定义方法:
细节,children注册,path不用斜杠,访问to:/my/login(组件里面写入children,path路径不用斜杠)
18.Vuex是什么怎么使用?使用场景?
vuex是vue框架中状态管理。在main.js引入store,注入。
新建了一个目录store,...export。应用场景有:单页应用中,组件之间的状态。
应用实例:音乐播放、登录状态、加入购物车等等
19.vue-cli中src目录下每个文件夹和文件的用法?
assets文件夹是放静态资源;
components是放组件;router是定义路由相关的配置;
view视图;
app.vue是一个应用主组件;
main.js是入口文件;
20.还用过哪些前端框架简介
React.js只是一个用于视图层的类库(lib)React.js并不是模板引擎
angular.js自带模板引擎,路由引擎,有健全的数据双向绑定机制,
内置Ajax请求功能,还能够定义Model。而React.js类库只能用于定义视图组件。
Vue.js相对于较轻量级、没有过多的插件、用什么装什么。
21.强缓存(Expires/max-age)和协商缓存(Last-Modified/E-tag)
强致缓存。在HTTP1.0中强缓存通过Expires响应头实现。 在HTTP1.1中,Cache-control响应头实现,其中max-age=xxx表示缓存资源将在xxx秒后过期。
协商缓存。在HTTP1.0中第一次请求资源时通过服务器设置Last-Modified响应头,填入最后修改时间。在之后的每次请求中都会在请求头中带上If-Modified-Since字段,如果未更新就返回304,指导浏览器从本地缓存中读取。 在HTTP1.1中,Etag设置响应头缓存标志。请求头附带If-None-Match。
区别: 强缓存只有首次请求会跟服务端通信,读取缓存资源时不用发送请求。返回200。 协商缓存总会与服务器交互,第一次是拿数据和E-tag的过程,之后每次凭E-tag询问是否更新。命中缓存返回304。 二者之间最大的区别就是:强缓存只通信一次;协商缓存每次都通信询问。