风萧萧易水寒,找份web前端工作真的难。看似晴朗的天气,却有复杂的心情。
文本超出部分省略号。
width:固定;height:100px;overflow:hidden;white-space:no-wrap;text-overflow:ellipsis;
区分移动端还是pc端或者是微信app还是自己的官方app
window.navigator.userAgent来匹配对应字段
web前端方面优化性能
减少http请求,合理设置 HTTP缓存、使用浏览器缓存、启用压缩、CSS Sprites、LazyLoad Images、CSS放在页面最上部,javascript放在页面最下面、减少cookie传输、Javascript代码优化、CSS选择符优化、CDN加速
常用的数组操作的方法
forEach()、sort()、reverse()、push()、unshift()、splice()、pop()、shift()、concat()、indexOf();join()
单位vh 的用法
不知道具体宽高,自身宽度和高度的一半,css: width: 300px; margin: 50vh auto 0;
浏览器版本
下划线hack(适用于IE6及其以下版本) _width: [BorderBox Model];
星号hack(适用于IE7以下版本) *width: [BorderBox Model];
星号 HTML hack(适用于IE4-6) * html p {font-size: 5em; }
星号加号HACK(适用于IE7)
typeof返回那些数据类型1)number;2)string;3)boolean;4)object5)function;6)undefined.
null和undefined区别
null不存在对象
undefined存在此对象,但没有初始化.
css的盒子模型
有两种盒子模型:IE盒子模型,W3C盒子模型
XHTML和HTML的区别
最主要的差别:XHTML元素必须被正确的嵌套,XHTML必须被关闭,标签名必须用小写,XHTML文档必须拥有根元素。
前端页面三层构成
由结构层,表示层,行为层组成
结构层:对网页的内容作出描述;
表示层:负责如何显示内容;
行为层:对网页中的事件作出反应;
哪些浏览器支持HTML5
IE,Google,Firefox,Safari,Opera;
IE6 BUG的解决办法
1) IE6在块级元素设置左右浮动,设定的margin造成双边距bug
解决办法:display: inline;
2) line-height,文本垂直居中差1px
解决办法:padding-top代替line-height居中,或line-height加1或减1
3) img于块元素中,底边多出空白
解决办法:父级设置overflow: hidden; 或 img { display: block; } 或 _margin: -5px;
4) li之间会有间距
解决办法:float: left;
5) position下的left,bottom错位
解决办法:为父级(relative层)设置宽高或添加*zoom:1
其他的问题很少见就不说了
CSS reset的作用和用途
reset的作用是让各个浏览器的CSS样式有一个统一的基准,理解为初始化css样式
语义化的HTML,HTML5新增的语义化标签
html语义化让页面的内容结构化,结构更加清晰,便于浏览器、搜索引擎解析。使阅读代码的人对网站更容易分块,便于阅读维护和理解
事件绑定和普通事件
普通添加事件的方法不支持添加多个事件,最下面的事件会覆盖上面的,而事件绑定(addEventListener)方式添加事件可以添加多个
IE和标准下兼容性的写法
获取鼠标当前的坐标:
IE下event.x,event.y;
标准下event.pageX,event.pageY;
获取窗体的高度和宽度:
IE下document.body.offsetWidth和document.body.offsetHeight
标准下document.documentElement.clientWidth和document.documentElement.clientHeight
添加事件:
IE下element.attachEvent(”onclick”, func);
标准下element.addEventListener(”click”, func, true);
等等......
ajax 在请求的时候 get请求和 post请求
1)使用Get请求时,参数在URL中显示,而使用Post方式,则不会显示出来
2)使用Get请求发送数据量小,Post请求发送数据量大
3)Get请求安全性较低,Post安全性较高