什么是浏览器内核?px、em 和 rem 的区别?new 操作符具体干了什么?

简介: 通常所谓的浏览器内核也就是浏览器所采用的渲染引擎,渲染引擎决定了浏览器如何显示网页的内容以及页面的格式信息。

一省:HTML

9. 什么是浏览器内核?浏览器内核有哪些?

浏览器内核: 通常所谓的浏览器内核也就是浏览器所采用的渲染引擎,渲染引擎决定了浏览器如何显示网页的内容以及页面的格式信息。

常见的浏览器内核:

  1. Gecko:早期被Netscape和Mozilla Firefox浏览器浏览器使用;
  2. Trident:微软开发,被IE4~IE11浏览器使用,但是Edge浏览器已经转向Blink;
  3. Webkit:苹果基于KHTML开发、开源的,用于Safari,Google Chrome之前也在使用;
  4. Blink:是Webkit的一个分支,Google开发,目前应用于Google Chrome、Edge、Opera等;

二省: CSS

9. CSS 单位中 px、em 和 rem 的区别?

  1. px是像素(pixel)的意思,绝对单位。像素 px 是相对于显示器屏幕分辨率而言的,是一个虚拟长度单位,是计算机系统的数字化图像长度单位;
  2. em是相对长度单位,会随着父元素字体大小改变而改变。
  3. rem是相对单位,会随着根元素字体大小改变而改变。
    <html lang="en">
    <head>
    <style>
     html {
          
          
       font-size: 30px;
     }
     .father {
          
          
       font-size: 10px;
     }
     .son {
          
            
       width: 10em;
       height: 10em;
       background: tomato;
     }
     .bro {
          
          
       width: 10rem;
       height: 10rem;
       background: skyblue;
     }
    </style>
    </head>
    <body>
    <div class="father">
     <div class="son"></div>
     <div class="bro"></div>
    </div>
    </body>
    </html>
    

三省:JavaScript

9. new 操作符具体干了什么?

  1. 创建一个空对象。
  2. 将新对象的proto赋值为构造函数的prototype属性。
  3. 将this指向新对象,执行构造函数内部的代码。
  4. 如果构造函数返回非空对象,则返回该对象,否则返回this。
    //使用new操作符
    function Person(obj) {
         
         
    this.name = obj.name;
    this.age = obj.age;
    }
    const p1 = new Person({
         
         
    name: "Jack",
    age: 20
    })
    console.log(p1);//Person {name: 'Jack', age: 20}
    
    //不使用new来实现
    function Person(obj) {
         
         
    var o = {
         
         }
    o.__proto__ = this.Person.prototype
    o.name = obj.name;
    o.age = obj.age;
    return o
    }
    const p2 = Person({
         
         
    name: 'Mick',
    age: 18
    })
    console.log(p2);//Person {name: 'Mick', age: 18}
    
相关文章
|
2月前
|
JavaScript 前端开发 UED
浏览器重绘和回流的区别是什么?
【10月更文挑战第30天】浏览器的重绘和回流在定义、触发原因、操作范围、性能开销以及优化方法等方面都存在明显的区别。在实际开发中,了解这些区别并采取相应的优化措施,对于提高页面的渲染性能和用户体验具有重要意义。
40 2
|
2月前
|
存储 缓存 网络协议
计算机网络常见面试题(二):浏览器中输入URL返回页面过程、HTTP协议特点,GET、POST的区别,Cookie与Session
计算机网络常见面试题(二):浏览器中输入URL返回页面过程、HTTP协议特点、状态码、报文格式,GET、POST的区别,DNS的解析过程、数字证书、Cookie与Session,对称加密和非对称加密
|
8月前
|
前端开发 JavaScript Java
Java与JavaScript的区别与联系:有人的地方就有江湖,有浏览器的地方就有JavaScript
Java与JavaScript的区别与联系:有人的地方就有江湖,有浏览器的地方就有JavaScript
403 0
|
7月前
|
数据采集 运维 安全
指纹浏览器与虚拟机的区别及在跨境电商中的应用
指纹浏览器与虚拟机在跨境电商中扮演不同角色。指纹浏览器通过独特设备指纹防止账号关联,适合多账号安全管理;虚拟机提供隔离环境,用于测试和开发,但需更多资源和技术管理。商家应根据需求平衡安全、效率与成本。
|
Web App开发 视频直播
浏览器跨标签页通信、双向数据传输、实时通信有什么区别?
浏览器跨标签页通信、双向数据传输、实时通信有什么区别?
89 0
|
JavaScript 前端开发
浏览器中的事件循环和Node.js中事件循环的区别(经典面试题)
浏览器中的事件循环和Node.js中事件循环的区别(经典面试题)
815 0
|
移动开发 前端开发 HTML5
浏览器和 Node 中的事件循环有什么区别?
浏览器和 Node 中的事件循环有什么区别?
102 0
|
JavaScript 前端开发
关于 getBoundingClientRect 方法在360极速浏览器的 IE 兼容模式下获取 documentElement 宽度比在 IE 浏览器下面多 4px 的问题
关于 getBoundingClientRect 方法在360极速浏览器的 IE 兼容模式下获取 documentElement 宽度比在 IE 浏览器下面多 4px 的问题
97 0
关于 getBoundingClientRect 方法在360极速浏览器的 IE 兼容模式下获取 documentElement 宽度比在 IE 浏览器下面多 4px 的问题
|
Web App开发
【已解决】浏览器无法设置小于12px的字体大小(font-size)
浏览器无法设置小于12px的字体大小(font-size)
411 0