浏览器相关的前端面试题

作为前端在工作中经常需要解决各种浏览器兼容性问题,因此面试中浏览器相关的问题也会经常碰到。本文总结了几个浏览器相关的前端面试题,希望能对大家有帮助。

作为前端在工作中经常需要解决各种浏览器兼容性问题,因此面试中浏览器相关的问题也会经常碰到。本文总结了几个浏览器相关的前端面试题,希望能对大家有帮助。

1、浏览器的内核分别是什么?

IE浏览器6、7、8、9、10、11-内核Trident

Edge浏览器(Edge)-内核EdgeHTML(全新内核)

谷歌浏览器(Chrome)-内核Blink(webkit的分支)

火狐浏览器(Firefox)-内核Gecko

苹果浏览器(Safari)-内核Webkit

Opera内核-原为Presto,现为Blink

2、浏览器默认的margin和padding不同,怎么解决?

解决方案是加一个全局的*{margin:0;padding:0;}来统一。

3、如何解决Chrome 中文界面下默认会将小于 12px 的文本强制按照 12px 显示?

可通过加入 CSS 属性 -webkit-text-size-adjust: none; 解决.

4、Event对象的一些兼容性写法?

4.1、获得event对象兼容性写法

event || (event = window.event);

4.2、获得target兼容型写法

event.target||event.srcElement

4.3、阻止浏览器默认行为兼容性写法

event.preventDefault ? event.preventDefault() : (event.returnValue = false);

4.4、阻止冒泡写法

event.stopPropagation ? event.stopPropagation() : (event.cancelBubble = true);

4.5、注册和删除事件方法的形式

// 绑定事件

function on(id, eventType, fn) {

var dom = this.isString(id) ? this.$id(id) : id;

if(dom.addEventListener) {

dom.addEventListener(eventType, fn);

} else {

if(dom.attachEvent) {

dom.attachEvent(‘on’ + eventType, fn);

}

}

}

// 解除绑定

function un(id, eventType, fn) {

var dom = this.$id(id);

if(dom.removeEventListener) {

dom.removeEventListener(eventType, fn, false);

} else {

if(dom.detachEvent) {

dom.detachEvent(“on” + eventType, fn)

}

}

}

浏览器相关的前端面试题

一起学习,互相督促进步,欢迎关注我~

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/86396.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信