Weekly 2016-08-04

文章

Full Width Containers in Limited Width Parents

作者就如何用 CSS 在一个已经限定宽度的容器里放一个和浏览器视窗宽度大小一样的容器(即类似我们常见的 100% width)的多种场景进行讨论,并给出解决方案。解决问题的思路并不复杂,但其中提及的一些比较新的 CSS 特性可以留意下,例如 calc@supportsvw 等。

CSS Containment in Chrome 52

在 Chrome 52 版本中已经支持一个非常新的 CSS 属性:contain。这个属性可以用来限定浏览器样式,布局绘制工作的一个作用域,从而提升页面渲染和动画的一个性能。举个简单的例子,一个 div 如果声明了 contain: layout,那么表示这个元素的布局不会影响外部的布局,外部的布局也不会影响它内部的布局。原本假设当我们调整一个元素的 padding-left 时,浏览器需要检查每一个独立的元素来确定布局的变化。但如果你修改的元素是在一个声明了 contain: layout 的元素内部时,则可以大大减少浏览器检测和重绘的动作,详情请查看文章内容,contain 属性更多说明可以查阅 W3C Draft

A Comprehensive Look at jQuery Selectors

这篇文章比较全面地介绍了 jQuery 的各种选择器,某些程度上可以帮助我们更加方便地获取需要的元素。虽然 jQuery 的选择器引擎很好很强大,但是日常使用中还是建议能用 CSS 选择器搞定的,便使用原生浏览器提供的方法来获取元素吧,例如 querySelectorquerySelectorAll 等。

web-scraping-with-nightmare-js

nightmare 是基于 PhantomJS 封装的一个 web 页面自动化的类库,适合用来做页面自动化的测试,提供的 API 相对来说比较舒服,类似 thenable 的方式。这篇文章是一个使用 nightmare 的介绍,使用 ngihtware 访问页面,操作页面,对页面截图,执行脚本等,还附带了一个操作的视频,可以在这个的基础上添加合适的断言库来做 UI 自动化的测试,也可以进行截图查看页面变更等。

Node.js 发布 6.3.1 版本

Node.js 又发布新的版本,详细的 commit 可以参考上述链接。主要还是做 issue 的 fix。变更的内容不多,主要就是提升 Buffer#form 和 Buffer#write 的性能,升级 V8 引擎到 5.0.71.xx 版本。

我们是如何做好前端工程化和静态资源管理

京东凹凸实验室前端团队出的文章,内容比较详细,涉及前端开发时的组件化,性能优化,以及自动化的资源构建管理等,值得一看,对改善我们现有的前端开发模式和工具等有一定的借鉴意义。

扒一扒 CSS 语言的诞生史

这是一篇译文,原文:The Languages Which Almost Became CSS
可以当成一个故事来看,讲述了从有 HTML 到 CSS 诞生过程中发生的一些事情,以及为什么最后会是 CSS 来处理 HTML 的样式。在期间出现过很多其他的样式解决方案,有一些方案的特性甚至出现在我们现在的 css 预处理器中。

代码

Aurelia 1.0 is Here!!!

外国遍地是轮子,一言不合我就造。Aurelia 1.0 发布,Aurelia 是以前 Angular 2 核心团队成员之一的 Rob Eisenberg 创建的,一个面向未来,全面提供模块化,结构化的前端框架,和 angular 2 有点类似,也包括了 MV* 和数据双向绑定等功能。由于使用了比较多新的 JavaScript 特性,所以对浏览器版本要求较高。有兴趣的人可以了解一下,个人感觉更多是应用在对浏览器无要求的项目上,或者 Electron 类的桌面应用上可以一玩。

GianlucaGuarini/allora

一个简单的库,利用 ES6 的 proxy 把一个对象的所有 API 转化为返回 promise 的方法。proxy 浏览器支持 现在还未普及,但是 Node 6 以上已经可以使用,附一篇详细介绍 Proxy 的文章:深入浅出ES6(十二):代理 Proxies

工具

hyperterm

一个用 Electron + React 开发的 terminal 客户端,暂时只有 Mac 版本下载(官网说很快有 windows 和 Linux 版本),对中文支持不好(估计会在新版本中优化),但是特点是可以使用 node 来开发各种各样的插件。

cssstats

一个可视化的站点 CSS 分析网站,输入 url 便可以获得相关 CSS 文件的信息,包括使用了多少个选择器,多少个属性声明,多少颜色值,背景颜色值等等。

starred

通过你的 Github 帐号 star 的内容帮你创建一个 awesome list,如:awesome-stars。可以方便快速查找和分享自己 Github star 的东西。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,863评论 1 92
  • •前端面试题汇总 一、HTML和CSS 21 你做的页面在哪些流览器测试过?这些浏览器的内核分别是什么? ...
    Simon_s阅读 2,240评论 0 8
  • 别人为什么愿意投资你? 在于你能给予什么。 为什么好不容易跟大牛搭上了联系,有事想让大牛出手相助,而且其实对于大牛...
    路小fei阅读 169评论 0 0
  • 《别客汇星球之幻宠大冒险》新版本上线,与您一同引爆2017,感受幻宠带来的轻松愉快!全新的战斗模式、爽快的战斗体验...
    小游戏123阅读 729评论 0 0
  • chapter.2 再见 “林霏,林霏?起床了!”母亲催促林霏起床的声音一阵高过一阵,“都二十几岁的人了,怎么还这...
    草木皆阅读 622评论 0 2