利用CSS3 gradient(渐变)函数实现渐变背景

CSS3 规范定义了两种类型的渐变,分别是线性渐变(linear-gradient)、径向渐变(radial-gradient)。在这之前要实现渐变背景的效果,通常需要用图片来实现。
CSS3 渐变背景在现代浏览器中基本得到了很好的实现,在 IE10 以上版本也得到了支持。而在低版本浏览器中需要添加 -webkit-、-moz- 或 -o- 前缀才能实现渐变的效果。 继续阅读

发表在 CSS | 标签为 , , , , , , , | 利用CSS3 gradient(渐变)函数实现渐变背景已关闭评论

HTML5全局属性一览

HTML5 规定了一些属性可以在所有 HMTL 元素上应用,称之为全局属性,而只能在部分 HTML 元素上应用的就是局部属性。HTML5 中的全局属性有:accesskey、class、contenteditable、contextmenu、data-*、dir、draggable、dropzone、hidden、id、lang、spellcheck、style、tabindex、title。 继续阅读

发表在 HTML | 标签为 , , , , | HTML5全局属性一览已关闭评论

JS对象浅拷贝与深拷贝方法

JS 对象浅拷贝是将对象的属性和值复制出来给另一个对象,可能没有将对象的所有层级的属性复制,新对象的属性的引用地址可能与原对象相同。而深拷贝就是将对象完全复制一份,复制出来的对象与原对象具有相同层级的属性和值,并且新对象的属性拥有独立的引用地址。 继续阅读

发表在 JavaScript | 标签为 , , , , , | JS对象浅拷贝与深拷贝方法已关闭评论

JS 不支持冒泡的DOM事件

事件冒泡是指在元素上某事件被触发时,这个事件将会在该元素的所有祖先元素上被触发。但是有些事件支持冒泡,有些则不支持。

不支持冒泡的事件

打印事件:
onafterprint、onafterprint
页面加载、卸载事件:
onload、onbeforeunload、onunload
滚动条滚动、浏览器窗口调整事件
onscroll、onresize 继续阅读

发表在 JavaScript | 标签为 , , , , | JS 不支持冒泡的DOM事件已关闭评论

CSS常见的自适应布局

自适应布局是在网页开发中很常见的一种布局方式,就是为了适配不同屏幕尺寸的设备,页面元素中内容主体的宽度或高度会根据浏览器窗口的大小自动调整。以下是几种自适应布局的实现:

自适应布局一:左侧宽度固定,右侧宽度自适应

HTML:

<div class="box">
  <div class="left"></div>
  <div class="right"></div>
</div>

继续阅读

发表在 CSS | 标签为 , , | CSS常见的自适应布局已关闭评论

JS获取DOM元素CSS样式的方法

CSS 样式有两种类型:
1.行内样式,即通过元素的 style 属性定义的样式。
2.非行内样式,即通过 <style> 标签或引入外部 CSS 文件定义的样式。
针对 DOM 元素的行内样式,可以从 DOM.style 样式集合中读取对应行内样式属性,如:DOM.style.width、DOM.style.height 等。而要获取非行内样式,则需要通过 window.getComputedStyle()(W3C)方法或 DOM.currentStyle(IE)当前样式集合属性去获取。 继续阅读

发表在 JavaScript | 标签为 , , , , | JS获取DOM元素CSS样式的方法已关闭评论

HTTP的三次握手与四次挥手

目录

1.HTTP 的三次握手
2.HTTP 的四次挥手

HTTP 的三次握手

三次握手(Three-way Handshake)是指在客户端和服务器之间建立一个 TCP 连接,总共需要发送 3 个包,其中客户端向服务器发送 2 个包,服务器向客户端发送 1 个包。进行三次握手主要是为了确认双方的接收能力和发送能力,并且根据双方的序列号和确认号,在客户端和服务器之间建立可靠的 TCP 连接用于传送数据。 继续阅读

发表在 HTTP | 标签为 , , | HTTP的三次握手与四次挥手已关闭评论

JS var、let、const 关键字的区别一览

var 关键字:ES5 标准,用 var 关键字声明的变量存在声明提升,即会将变量提前到当前作用域顶部进行声明,不存在块级作用域,允许重复声明同名变量,变量声明后可被修改。
let 关键字:ES6 标准,声明的变量不存在声明提升,变量在当前块作用域及子作用域内才可访问,不允许重复声明同名变量,变量声明后可被修改。 继续阅读

发表在 JavaScript | 标签为 , , , , | JS var、let、const 关键字的区别一览已关闭评论

JS 严格模式与非严格模式的区别

在 JavaScript 脚本的开头添加

"use strict";

'use strict';

即可使用严格模式,在函数内部的开头添加则表示只在函数内使用严格模式。

为什么使用严格模式?

1.可以避免一些不合理、不严谨 JavaScript 代码逻辑(如给未定义的变量赋值会报错);
2.提高 JavaScript 代码运行的安全性(如 eval() 函数会创建独立的作用域);
3.提高 JavaScript 解释器的编译效率,提升代码运行性能;
4.为未来新版本的 JavaScript 做好铺垫。 继续阅读

发表在 JavaScript | 标签为 , , , | JS 严格模式与非严格模式的区别已关闭评论

回流/重排(reflow)与重绘(repaint)

回流/重排(reflow): 渲染树(Render Tree)中一些节点的尺寸、位置、可见性等属性发生改变时需要重新计算几何信息,浏览器重新渲染页面,导致页面布局变化的过程。
重绘(repaint): 当页面元素的样式改变不影响其在文档流中的尺寸、位置、可见性,如改变元素的字体颜色、背景颜色等,就是重绘,这个过程不会导致页面的布局变化。 继续阅读

发表在 前端 | 标签为 , , | 回流/重排(reflow)与重绘(repaint)已关闭评论