CSS魔法堂:重拾Border之——更广阔的遐想

2016-05-06
阅读 2 分钟
2.8k
当CSS3推出border-radius属性时我们是那么欣喜若狂啊,一想到终于不用再添加额外元素来模拟圆角了,但发现border-radius还分水平半径和垂直半径,然后又发现border-top-left/right-radius的水平半径之和大于元素宽度时,实际值会按比例分配元素宽度时,不禁会问"我真的懂border吗?"。本系列将稍微深入探讨一下那个貌似...

CSS魔法堂:重拾Border之——不仅仅是圆角

2016-05-05
阅读 9 分钟
4.5k
当CSS3推出border-radius属性时我们是那么欣喜若狂啊,一想到终于不用再添加额外元素来模拟圆角了,但发现border-radius还分水平半径和垂直半径,然后又发现border-top-left/right-radius的水平半径之和大于元素宽度时,实际值会按比例分配元素宽度时,不禁会问"我真的懂border吗?"。本系列将稍微深入探讨一下那个貌似...

CSS魔法堂:重拾Border之——图片作边框

2016-05-03
阅读 5 分钟
3.5k
当CSS3推出border-radius属性时我们是那么欣喜若狂啊,一想到终于不用再添加额外元素来模拟圆角了,但发现border-radius还分水平半径和垂直半径,然后又发现border-top-left/right-radius的水平半径之和大于元素宽度时,实际值会按比例分配元素宽度时,不禁会问"我真的懂border吗?"。本系列将稍微深入探讨一下那个貌似...

CSS魔法堂:你真的理解z-index吗?

2016-04-29
阅读 6 分钟
3.7k
假如只是开发简单的弹窗效果,懂得通过z-index来调整元素间的层叠关系就够了。但要将多个弹窗间层叠关系给处理好,那么充分理解z-index背后的原理及兼容性问题就是必要的知识储备了。本文作为对W3C Recommendation-Layered presentation学习后整理的笔记,以便日后查阅。 由于将英文名词翻译为中文名词容易产生歧义(如N...

JS魔法堂:彻底理解0.1 + 0.2 === 0.30000000000000004的背后

2016-04-28
阅读 4 分钟
14.3k
一天有个朋友问我“JS中计算0.7 * 180怎么会等于125.99999999998,坑也太多了吧!”那时我猜测是二进制表示数值时发生round-off error所导致,但并不清楚具体是如何导致,并且有什么方法去规避。于是用了3周时间静下心把这个问题搞懂,在学习的过程中还发现不仅0.7 * 180==125.99999999998,还有以下的坑

基础野:细说浮点数

2016-04-27
阅读 8 分钟
9k
本来只打算理解JS中0.1 + 0.2 == 0.30000000000000004的原因,但发现自己对计算机的数字表示和运算十分陌生,于是只好恶补一下。 本篇我们一起来探讨一下基础——浮点数的表示方式和加减乘除运算。 在深入前有两点我们要明确的:

CSS魔法堂:重拾Border之——解构Border

2016-04-27
阅读 3 分钟
1.8k
当CSS3推出border-radius属性时我们是那么欣喜若狂啊,一想到终于不用再添加额外元素来模拟圆角了,但发现border-radius还分水平半径和垂直半径,然后又发现border-top-left/right-radius的水平半径之和大于元素宽度时,实际值会按比例分配元素宽度时,不禁会问"我真的懂border吗?"。本系列将稍微深入探讨一下那个貌似...

基础野:细说有符号整数

2016-04-26
阅读 4 分钟
1.9k
本来只打算理解JS中0.1 + 0.2 == 0.30000000000000004的原因,但发现自己对计算机的数字表示和运算十分陌生,于是只好恶补一下。 本篇我们一起来探讨一下基础——有符号整数的表示方式和加减乘除运算。

基础野:细说无符号整数

2016-04-25
阅读 4 分钟
2.2k
本来只打算理解JS中0.1 + 0.2 == 0.30000000000000004的原因,但发现自己对计算机的数字表示和运算十分陌生,于是只好恶补一下。 本篇我们一起来探讨一下基础的基础——无符号整数的表示方式和加减乘除运算。

基础野:细说原码、反码和补码

2016-04-23
阅读 5 分钟
3.7k
说来惭愧虽然刚接触计算机时已经学过原码、反码和补码的内容,但最近重温时却发现“这是什么鬼东西”,看来当初只是应付了考试了而已。本篇将试图把他们说个明白,以防日后自己又忘记了。 在深入之前,我们先明确以下几点:

CSS3魔法堂:说说Multi-column Layout

2016-04-22
阅读 5 分钟
3.5k
是否记得《读者文摘》中那一篇篇优美感人的文章呢?那除了文章内容外,还记得那报刊、杂志独有的多栏布局吗? 当我们希望将报刊、杂志中的阅读体验迁移到网页上时,最简单直接的方式就是采用多栏布局来对内容排版,然而在过去我们仅能通过float+positioned来模拟多栏布局,而且效果不尽人意。而CSS3引入新的Multi-column...

CSS魔法堂:"那不是bug,是你不懂我!" by inline-block

2016-04-19
阅读 8 分钟
3.5k
每当来个需要既要水平排版又要设置固定高宽时,我就会想起display:inline-block,还有为了支持IE5.5/6/7的hack*display:inline;*zoom:1;。然后发现盒子间无端端多了个不可选的空白符,于是想尽办法修复这个bug。

CSS魔法堂:小结一下Box Model与Positioning Scheme

2016-04-12
阅读 2 分钟
1.8k
对于Box Model和Positioning Scheme中3种定位模式的细节,已经通过以下几篇文章记录了我对其的理解和思考。 《CSS魔法堂:重新认识Box Model、IFC、BFC和Collapsing margins》 《CSS魔法堂:你一定误解过的Normal flow》 《CSS魔法堂:Absolute Positioning就这个样》 《CSS魔法堂:说说Float那个被埋没的志向》 深入细...

CSS魔法堂:说说Float那个被埋没的志向

2016-04-11
阅读 9 分钟
2.3k
定位系统中第一难理解就是Normal flow,而第二就非Float莫属了,而Float难理解的原因有俩,1. 一开头我们就用错了;2. 它跟Normal flow靠得太近了。本文尝试理清Float的特性和行为特征,若有纰漏望各位指正。

CSS魔法堂:你一定误解过的Normal flow

2016-04-08
阅读 3 分钟
4.7k
刚接触CSS时经常听到看到一个词"文档流",那到底什么是"文档流"呢?然后会看到"绝对定位和浮动定位能脱离文档流",从这句可以看到文档流和绝对定位、浮动定位是同一个范畴的概念,再后来在W3C标准文档找到关于Absolute positioning和Float的内容,却怎么也找不到Document flow(文档流)的资料。后来终于知道是某位大神将N...

CSS魔法堂:Absolute Positioning就这个样

2016-04-06
阅读 5 分钟
2.8k
当我们以position:absolute之名让元素脱离Normal flow的控制后,以为通过left和top属性值即可让元素得以无限的自由时,却发现还有各种神秘的力量左右着它的来去,于是我们意识到自己力量的微弱,开始迷茫不前。 后来有幸拾到各路前辈高人的秘笈,终于打通任督二脉,记录在案以便日后查阅。

CSS魔法堂:你真的懂text-align吗?

2016-03-25
阅读 8 分钟
4.8k
也许提及text-align你会想起水平居中,但除了这个你对它还有多少了解呢?本篇打算和大家一起来跟text-align来一次负距离的交往,你准备好了吗?

CSS魔法堂:深入理解line-height和vertical-align

2016-03-23
阅读 16 分钟
4.4k
一直听说line-height是指两行文本的基线间的距离,然后又说行高等于行距,最近还听说有个叫行间距的家伙,@张鑫旭还说line-height和vertical-align基情四射,贵圈真乱啊。。。。。。于是通过本篇来一探究竟:)

CSS魔法堂:不得不说的Containing Block

2016-03-19
阅读 5 分钟
3.8k
《CSS魔法堂:重新认识Box Model、IFC、BFC和Collapsing margins》中提到在没有floated兄弟盒子时,line box的左右边框会与所属的containing block的左右content edge相接触。那到底什么是containing block(abbr. CB)呢? containing block在CSS的visual formatting model中十分重要的理论基础,因为盒子的宽/高度自动值...

CSS魔法堂:hasLayout原来是这样的!

2016-03-18
阅读 3 分钟
5.8k
过去一直听说旧版本IE下很多诡异bug均由一个神秘角色引起的,那就是hasLayout。趁着最近突然发神经打算好好学习CSS,顺便解答多年来的疑惑。

CSS魔法堂:重新认识Box Model、IFC、BFC和Collapsing margins

2016-03-17
阅读 16 分钟
7.3k
盒子模型作为CSS基础中的基础,曾一度以为掌握了IE和W3C标准下的块级盒子模型即可,但近日在学习行级盒子模型时发现原来当初是如此幼稚可笑。本文尝试全面叙述块级、行级盒子模型的特性。作为近日学习的记录。

JS魔法堂:那些困扰你的DOM集合类型

2015-08-07
阅读 9 分钟
3.2k
大家先看看下面的js,猜猜结果会怎样吧! 可选答案: ①. 获取id属性值为id的节点元素 ②. 抛namedItem is undefined的异常

JS魔法堂之实战:纯前端的图片预览

2015-08-06
阅读 4 分钟
2.6k
图片上传是一个普通不过的功能,而图片预览就是就是上传功能中必不可少的子功能了。在这之前,我曾经通过订阅input[type=file]元素的onchange事件,一旦更改路径则将图片上传至服务器,接着就获取图片路径并赋值到img元素上。先不管文件异步提交的解决方案,就是服务端清理那些临时的预览图片已经增加不少工作量了。 偶...

PLT:说说Evaluation strategy

2015-08-06
阅读 6 分钟
2.8k
在学习方法/函数时,我们总会接触到 按值传值 和 引用传值 两个概念。像C#是按值传值,但参数列表添加了ref/out后则是引用传值,但奇怪的事出现了

JS魔法堂:再识instanceof

2015-07-30
阅读 3 分钟
2.1k
大家都知道instanceof一般就是用来检查A对象是否为B类或子类的实例。那问题是JS中没有类的概念更没有类继承的概念(虽然有构造函数),那么instanceof到底是怎样判断A对象是B构造函数的实例呢?本文将对此作分析记录,以便日后查阅。

ES6 Features系列:GeneratorFunction介绍

2015-07-25
阅读 9 分钟
4.4k
第一次看koajs的示例时,发现该语句 function *(next){...............} ,这是啥啊?于是搜索一下,原来这是就是ES6的新特性Generator Function(生成器函数)。

Polyfill:Function.prototype.bind的四个阶段

2015-07-20
阅读 6 分钟
3.6k
昨天边参考es5-shim边自己实现Function.prototype.bind,发现有不少以前忽视了的地方,这里就作为一个小总结吧。 一、Function.prototype.bind的作用 其实它就是用来静态绑定函数执行上下文的this属性,并且不随函数的调用方式而变化。 示例: {代码...} 二、浏览器支持 Function.prototype.bind是ES5的API,所以坑爹的I...

Design Pattern: Not Just Mixin Pattern

2015-07-15
阅读 9 分钟
3.1k
从Mix-In模式到Mixin模式,中文常用翻译为“混入/织入模式”。单纯从名字上看不到多少端倪,而通过采用Mixin模式的jQuery.extend我们是否可以认为Mixin模式就是深拷贝的代名词呢? 本文试图从继承机制入手对Mixin模式进行剖析,若有纰漏请大家指正,谢谢。

Design Pattern: Observer Pattern

2015-07-09
阅读 6 分钟
1.7k
一直对Observer Pattern和Pub/Sub Pattern有所混淆,下面打算通过这两篇Blog来梳理这两种模式。若有纰漏请大家指正。

Architecture Pattern: Publish-subscribe Pattern

2015-07-07
阅读 7 分钟
2.1k
一直对Observer Pattern和Pub/Sub Pattern有所混淆,下面打算通过这两篇Blog来梳理这两种模式。若有纰漏请大家指正。