阐述CSS Grid实现限宽容器全屏效果
在《如何使用CSS Grid布局实现限宽容器全屏效果》一文中介绍了使用CSS Grid布局实现限宽容器全屏效果,特别是全屏图片的效果时常可见。但这篇文章并没有详细阐述为什么使用CSS Grid这种方法。@Rachel Andrew新发的博文尝试阐述其中的原理。@Rachel Andrew写了很多教程来解释CSS Grid规范的,然而要理解CSS...
View Article使用浏览器开发者工具检测CSS动画性能
CSS动画性能非常好。虽然是简单的几个动画元素,如果你的代码没有让动画表现出其意义或者说使用页面变得更为复杂,网站的用户可能很快就会发现,并且有可能让用户觉得恶心。反而得不到相应的好评。在这篇文章中,我将介绍浏览器开发者工具的一些有用的功能,这些功能将能帮助你检查出你的CSS动画在渲染引擎下会发生些什么。这样,当你的动画看起来有点卡(帧率图有点波涛汹涌),你会找到地应的方法知道为什么为会这样以及如何...
View Article探讨CSS Grid Layout在原生客户端中运用
CSS Grid Layout是W3C规范中专门为Web布局提供的一个特性。CSS Grid Layout将改变传统的布局模式,他将让布局从一维布局变成了二维布局。简单的说,有了CSS Grid Layout之后,布局不再局限于单个维度了。这个时候你要实现类似九宫格,拼图之类的布局效果显得格外的容易。虽然CSS Grid...
View Article不使用Media Queries的自适应CSS
本文转载自:众成翻译译者:Doraemonls链接:http://www.zcfy.cc/article/2919原文:https://www.sitepoint.com/responsive-css-patterns-without-media-queries虽然标题说不用Media Queries,但我还是要在开头讲清楚,本文并不是要大家丢掉Media Queries,也不是要抨击Media...
View Articleminmax()函数如何工作
CSS Grid Layout规范中的minmax()函数是一个非常有用的新特性。这个函数能够让我们用最简单的CSS控制网格轨道的大小。这个函数包括一个最小值和最大值。minmax()函数minmax()函数接受两个参数,一个最小值和一个最大值。minmax(min, max)...
View ArticleCSS的状态
JavaScript越来越有一统天下的趋势,这已经不是什么秘密了。但是你可能不知道的是,CSS也同样的在进化,在创新。CSS最近已突飞猛进,得到很多的改善。甚至CSS都有可能不再是你认识的CSS了。当你不注意的时候,CSS社区开发了很多真正解决许多古怪的CSS问题,在这个过程不需要使用一些黑魔法,以前的缺陷也不再是缺陷。也使这些害群之马从前端的家庭中踢出去。在这篇文章中,将会介绍CSS中的五种老的处...
View ArticleCSS局部变量
CSS自定义属性也被称为CSS变量。这是非常令人兴奋的,因为我们在CSS中终于拥有真正的变量。什么意思,真正的变量?我的意思是可以动态更新和修改变量。虽然CSS处理器有了变量(Sass和PostCSS),这些变量通过编译变成了CSS,但没有动态能力更新其变量。这不是真正的CSS变量,只是用来存储和更新可用的值。你可以通过--设置CSS变量和通过var(--varName)访问已声明的变量。这是一个非...
View ArticleJavaScript异步函数
JavaScript的主要优势之一就是任何事情都是异步的。在大多数情况下,不同部分的代码不会影响共他的代码执行。doALongThing(() => console.log('I will be logged second!')); console.log('I will be logged first!');...
View Article【转载】异步函数:提高 Promise 的易用性
Chrome 55 中默认情况下启用异步函数,坦率地讲,它们的作用相当不可思议。 可以利用它们像编写同步代码那样编写基于 Promise 的代码,而且还不会阻塞主线程。 它们可以让异步代码“智商”下降、可读性提高。异步函数的工作方式是这样的:async function myFirstAsyncFunction() { try { const fulfilledValue = await...
View Article【转载】JavaScript异步编程原理
众所周知,JavaScript 的执行环境是单线程的,所谓的单线程就是一次只能完成一个任务,其任务的调度方式就是排队,这就和火车站洗手间门口的等待一样,前面的那个人没有搞定,你就只能站在后面排队等着。在事件队列中加一个延时,这样的问题便可以得到缓解。A: 嘿,哥们儿,快点! B: 我要三分钟,你先等着,完了叫你~ A: 好的,记得叫我啊~ 你(C)也等着吧,完了叫你~ C: 嗯! ......
View Article【转载】JavaScript异步进化史
前言JS 中最基础的异步调用方式是 callback,它将回调函数 callback传给异步 API,由浏览器或 Node 在异步完成后,通知 JS 引擎调用 callback。对于简单的异步操作,用 callback实现,是够用的。但随着负责交互页面和 Node 出现,callback方案的弊端开始浮现出来。 Promise 规范孕育而生,并被纳入 ES6 的规范中。后来 ES7 又在...
View Article【转载】最后谈一次 JavaScript 异步编程
对于 JavaScript 的异步编程我们早就谈得太多了,我们为了处理 Callback Hell问题已经做了太多太多了,从 Promise 到 generator再到 async/await,JavaScript 这个惊天巨坑算是勉强填完了。关于 Promise 、 generator以及 aysnc/await这些具体的技术怎么用,这里就不细谈了,我们更多谈谈 “形而上”...
View Article【转载】异步操作和Async函数
异步编程对JavaScript语言太重要。JavaScript语言的执行环境是“单线程”的,如果没有异步编程,根本没法用,非卡死不可。ES6诞生以前,异步编程的方法,大概有下面四种。回调函数事件监听发布/订阅Promise...
View ArticleWeb 存储机制
Web存储机制,在这里主要聊有关于Web Storage API提供的存储机制,通过该机制,浏览器可以安全地存储键值对,比使用cookie更加直观。接下来简单的了解如何使用这方面的技术。基本概念Web Storage...
View Article【转载】理解与使用JavaScript中的回调函数
在JavaScript中,函数是第一类对象,这意味着函数可以像对象一样按照第一类管理被使用。既然函数实际上是对象:它们能被“存储”在变量中,能作为函数参数被传递,能在函数中被创建,能从函数中返回。因为函数是第一类对象,我们可以在JavaScript使用回调函数。在下面的文章中,我们将学到关于回调函数的方方面面。回调函数可能是在JavaScript中使用最多的函数式编程技巧,虽然在字面上看起来它们一直...
View Article【转载】JavaScript中回调地狱的今生前世
讲个笑话JavaScript 是一门编程语言异步编程JavaScript 由于某种原因是被设计为单线程的,同时由于 JavaScript 在设计之初是用于浏览器的 GUI...
View Article【转载】细嗅Promise
Ajax 出现的时候,刮来了一阵异步之风,现在 Nodejs 火爆,又一阵异步狂风刮了过来。需求是越来越苛刻,用户对性能的要求也是越来越高,随之而来的是页面异步操作指数般增长,如果不能恰当的控制代码逻辑,我们就会陷入无穷的回调地狱中。ECMAScript 6 已经将异步操作纳入了规范,现代浏览器也内置了 Promise 对象供我们进行异步编程,那么此刻,还在等啥?赶紧学习学习 Promise...
View Article渐进式动画解决方案
今天聊的内容是淘宝虚拟互动实验室的@渚薰大神 在2017年06月在北京GMTC大会上分享的一个主题。未能亲临听到相关的精彩分享,但还算是有幸的,在内部听到@渚薰大神 的分享。个人对Web动画这方面的课程非常的感兴趣,而且现在和团队一直在致力于手淘互动动效相关的研究。经历了从Gif、视频到CSS...
View Article19个JavaScript编码小技巧
这篇文章适合任何一位基于JavaScript开发的开发者。我写这篇文章主要涉及JavaScript中一些简写的代码,帮助大家更好理解一些JavaScript的基础。希望这些代码能从不同的角度帮助你更好的理解JavaScript。三元操作符如果使用if...else语句,那么这是一个很好节省代码的方式。Longhand:const x = 20; let big; if (x > 10) {...
View Article