浏览器工作原理

2021-05-22
阅读 11 分钟
2.2k
架构进程和线程进程可以被描述为是一个应用的执行程序。线程存在于进程并执行程序任意部分。启动应用时会创建一个进程。程序也许会创建一个或多个线程来帮助它工作,这是可选的。操作系统为进程提供了一个可以使用的“一块”内存,所有应用程序状态都保存在该私有内存空间中。关闭应用程序时,相应的进程也会消失,操作系...

前端需要了解的TCP,UDP,IP

2021-05-22
阅读 20 分钟
1.8k
TCP什么是 TCP ?TCP 是面向连接的、可靠的、基于字节流的传输层通信协议。面向连接:一定是「一对一」才能连接,不能像 UDP 协议可以一个主机同时向多个主机发送消息,也就是一对多是无法做到的;可靠的:无论网络链路中出现了怎样的链路变化,TCP 都可以保证一个报文一定能够到达接收端;字节流:消息是「没有边界」的...

前端需要了解的HTTP网络协议

2021-05-22
阅读 35 分钟
4.3k
TCP/IP 网络分层模型说明OSI 网络分层模型说明应用层 (application layer)由于下面的三层把基础打得非常好,所以在这一层就百花齐放了,有各种面向具体应用的协议。例如 Telnet、SSH、FTP、SMTP 等等,当然还有我们的 HTTP。传输单位则是消息或报文(message)。应用层 (application layer)面向具体的应用传输数据。...

[javascript总结]原型和原型链

2021-05-22
阅读 6 分钟
1.5k
JavaScript中任意对象都有一个内置属性 [[Prototype]] ,但是ES5之前没有访问这个 [[Prototype]] 属性的标准方式,所以大多数浏览器会在每个对象上暴露__proto__属性,通过这个属性可以访问对象的原型。

V8是怎么执行一段JavaScript?以及过程中可能涉及到的堆栈,执行上下文,作用域,闭包

2021-05-22
阅读 15 分钟
4.7k
V8 是一个由 Google 开发的开源 JavaScript 引擎,目前用在 Chrome 浏览器和 Node.js 中,其核心功能是执行易于人类理解的 JavaScript 代码。

[JavaScript总结]this绑定全面解析

2021-04-27
阅读 12 分钟
3k
当一个函数被调用时,会创建一个执行上下文。这个执行上下文会包含函数在哪里被调用(执行栈)、函数的调用方式、传入的参数等信息。this就是这个执行上下文的一个属性,会在函数执行的过程中用到。

给自己的Fonts教程续

2017-07-05
阅读 12 分钟
4.7k
这是一个叫做@font-face 的CSS @规则 ,它允许网页开发者为其网页指定在线字体。 通过这种作者自备字体的方式,@font-face 可以消除对用户电脑字体的依赖。 @font-face 不仅可以放在在CSS的最顶层, 也可以放在 @规则 的 条件规则组 中。

给自己的Fonts教程

2017-06-25
阅读 12 分钟
11.5k
准备工作 字符 - Character 字母、数字、汉字、符号等,是一种抽象实体。 字形 - Glyph 单个「字符」的具体表达,一个字可有多个不同的字形。 原则上 Unicode 中只对字,而非字形编码。 字型 - Font 印刷行业中,指某一整套具有同样样式和尺码的字形,如一整套中易宋体 5 号字、一整套 9 磅 Helvetica Neue粗体字。 字体...

可视化效果(Visual effects)

2017-05-21
阅读 6 分钟
4.2k
Overflow and clipping 一般地,一个块盒的内容都被限制在该盒的content边内。某些情况下,一个盒可能会溢出,意味着它的部分内容或者全部内容位于该盒外部,例如: 一行无法拆分,导致行盒比块盒宽 一个块级盒对其包含块来说太宽了。当一个元素的width属性具有一个能让生成盒从包含块的边内溢出的值时,可能会发生这种...

z-index

2017-05-19
阅读 3 分钟
2.7k
层叠上下文(stacking context)是HTML中的一个三维的概念.如果一个元素含有层叠上下文,我们就可以理解为这个元素在Z轴上就"高人一等".

绝对定位(Absolute positioning)

2017-05-17
阅读 2 分钟
4.6k
相对于float引起父元素塌陷,absolute要更进一步,上面的例子就可以看出,absolute元素完全脱离文档流,并且被其它盒子以及盒子内的文本无视

浮动(Float)

2017-05-09
阅读 3 分钟
2.6k
在绝大多数Web开发者的语境中,“布局”这个术语和“排版”是有差异的。“布局”偏向于指宏观的GUI区域划分,比如双栏布局或三栏布局等。从这一点出发,float其实本不是一项用于“布局”的属性。float对应的其实是传统印刷排版中图文混排中的环绕。

相对定位(Relative positioning)

2017-05-07
阅读 1 分钟
2.3k
当一个盒根据常规流或者浮动摆放好后,它可能会相对于该位置移动,这叫相对定位。 相对定位的盒保持它在常规流中的大小,包括换行和空格都会原样保留

行内格式化上下文(Inline formatting contexts)

2017-05-05
阅读 5 分钟
8.2k
IFC布局规则: 在一个行内格式化上下文中,盒是一个接一个水平放置的,从包含块的顶部开始 这些盒之间的水平margin,border和padding都有效 盒可能以不同的方式竖直对齐:以它们的底部或者顶部对齐,或者以它们里面的文本的基线对齐 行盒(line box) 包含来自同一行的盒的矩形区域叫做行盒(line box) line box的宽度由包含...

块格式化上下文(Block formatting contexts)

2017-04-26
阅读 1 分钟
2k
浮动,绝对定位元素,非块盒的块容器(例如,inline-blocks,table-cells和table-captions)和overflow不为visible的块盒(当该值已被传播到视口时除外(except when that value has been propagated to the viewport))会为它们的内容建立一个新的块格式化上下文

盒模型(Box model)

2017-04-25
阅读 1 分钟
3.4k
CSS盒模型描述了一个为文档树中的元素生成的并根据可视化格式模型进行布局的矩形框 IE盒模型和W3C盒模型在计算总宽度中存在一些差异 在W3C模型中width和height是指content的宽度和高度 在IE盒模型中,width和height包含border和margin以及content的宽度和高度 在CSS3中引入了box-sizing属性,它可以允许改变默认的CSS盒模...

border详解

2017-04-25
阅读 2 分钟
3.9k
border-style:dashed虚线,在chrome/firefox中,实点宽高3:1,实点虚点宽度比例1:1;在IE中,实点宽高2:1,实点虚点宽度比例2:1.

padding详解

2017-04-20
阅读 1 分钟
3.4k
padding属性指定了盒的padding区的宽度。'padding'简写属性一次性设置四周的padding,而其它padding属性只设置它们各侧的

margin详解

2017-04-13
阅读 3 分钟
3.8k
margin属性指定了盒的margin区的宽度。margin简写属性一次性设置四周的margin,而其它margin属性只设置它们各侧的。这些属性适用于所有元素,但非替换行内元素上的竖直margin将不会产生任何效果

视觉格式化模型(Visual formatting model)

2017-03-02
阅读 5 分钟
3.2k
在可视化格式模型(Visual formatting model)当中,文档树中的每个元素根据其盒模型生成0个或多个盒.这些盒的布局由(以下因素)控制:

CSS选择器

2017-01-24
阅读 4 分钟
1.6k
基本选择器 选择器 含义 CSS版本 优先级 * 通用元素选择器,匹配任何元素 2 0,0,0,0 E 标签(元素)选择器,匹配所有使用E标签的元素 1 0,0,0,1 .class1 class选择器,匹配所有class属性中包含class1的元素 1 0,0,1,0 #id1 id选择器,匹配所有id属性中等于id1的元素 1 0,1,0,0 其中,0,1,0,0中的第一位表示是否是内联的意思,是...

Atom安装及配置

2017-01-17
阅读 2 分钟
8.5k
Atom插件安装 比较常用的插件安装方法有3种. 1.假如有VPS的话,可以使用代理安装,没有的可以使用Lantern作为代理.这种方法最方便. 注意,需要为apm指定代理,即在XXX(用户文件)的.atom目录下创建一个名为.apmrc的文件,打开并编辑: {代码...} 完成后,需要重启. 2.使用git把插件clone下来,这种方式通常为: 首先将插件clone到....