糖,茶,咖啡,酒精,烟草 Lionad

认知谦逊是指一种科学观察的姿态,它根植于以下认识:

a. 世界的知识总是由观察者解释、组织和过滤,因此,
b. 科学必须建立在认识到观察本身无法把握世界的基础上。
JDON

一首诗不能被完成,只能被遗弃。 A poem is never finished, only abandoned. 保尔·瓦雷里

如果您不能明智地为一个问题的正反双方都进行辩护,那么您对这个问题的理解就不够好,也就不能为任何一方辩护。 JDON

1、设置 content-visibility 让浏览器自动管理元素的可见状态,提高首屏渲染速度。为了正确滚动,可以使用 contain-intrinsic-size 改变元素固有尺寸或使用 JS 动态设置其值。
2、应该把 will-change 当成最后的优化手段(不宜滥用),有两个不常见但好用的值 scroll-position、content 分别指将改变元素的滚动位置、元素内容将改变
3、使用 contain 属性让元素及其内容独立于文档渲染,其值 layout、paint、size 分别指元素内容不影响上级、子元素不在元素范围外渲染、元素盒子大小不依赖其子元素
4、使用 font-display 的 optional 值让浏览器根据网速自动判断应用 fallback 还是 auto(一般来说 auto 的效果类似 block)
大漠《仅使用 CSS 提高页面渲染速度》

异步加载 CSS 文件的方法。

<link rel="stylesheet"
  href="non-critical.css"
  media="print"
  onload="this.media='all'">
《How to Improve CSS Performance》

Github Actions 会屏蔽等同于 Secrets 的字符串的输出(以星号代之)。 为了方便调试,你可以修改该字符串,比如插入空格,这样能正常输出。 不过别忘了,Github Actions 会保留日志,所以调试时需要使用假的 Secrets。 How to debug a Github Actions’ secret

相关 CSS 父选择器的一些内容。 《如何在 CSS 中实现父选择器效果?》

    * 可以使用兄弟选择器模拟父选择器
    * :has 选择器推迟到 CSS 5 了,所以还是别等了(找了下规范,发现 CSS Selectors Level 4 已经描述过这玩意儿了)
《Why we don't have a parent selector》
    * 浏览器加载多少内容就渲染多少内容,父选择器使得当前渲染的内容可能在之后发生改变。这里有巨额的性能风险。

起一个好名字应该很难,因为,一个好名字需要把要义浓缩在一到两个词。 Creating good names is hard, but it should be hard, because a great name captures essential meaning in just one or two words Joel Spolsky @Stack OverFlow

人应该能够更换尿布,策划战争,杀一头猪,开船掌舵,设计建筑,写十四行诗,会计结算,粉刷砌墙,治疗脱臼,安慰临终的人,执行命令,发布命令,携手合作,独立行动,解数学方程,分析问题,施肥铲粪,电脑编程,做可口的饭菜,高效地战斗,勇敢地死去。只有昆虫才专业化。 罗伯特·安森·海因莱因

为什么浏览器使用 HTTP/2 协议通讯时需要 HTTPS 为基础:

    0:以下答案在今天也许并不适用;
    1:开发者想通过 HTTP/2 普及加密协议(在互联网中的运用);
    2:减少一些老旧的(不支持新协议)的中间件对请求的影响;
    3:一些老旧的服务器在协商 HTTP/2 时会直接返回错误,而协商 HTTPS 时直接返回错误的可能性要更小;
Why do browser implementations of HTTP/2 require TLS ?

比 Chrome Dev 更高级的弱网环境模拟:Clumsy 能系统级拦截指定类型的连接,模拟丢包、延迟、断连、乱序等状况。

Lionad

JS 中那些令人讨厌的东西:

function f({ a, b = 0 } = { a: "" }) {}
// f()
// f({ a: 1 })
// f({ b: 2 })
// f({ a: 1, b: 2 })
Lionad

我相信下一个平面设计的方法,来自其它非设计领域。 大卫·卡森

这款像素字太强了,能在 7x7 的尺寸内展现出汉字的小尺寸极限。这款像素字太强了,能在 7x7 的尺寸内展现出汉字的小尺寸极限。这款像素字太强悍了,能在 7x7 的尺寸内展现出汉字的小尺寸极限。
丁卯点阵体:探索像素汉字的小尺寸极限

紧跟别人的设计最终会得到什么样的回馈?唯一的回馈就是空虚感。 对于设计师而言,趋势有点像垃圾食品。不加分辨地追随趋势能够给你带来一些「看起来显而易见但是非常廉价」的解决方案,这些解决方案在短期内会带来回馈,但是从长远来看,却毫无价值。追随趋势的设计师很快就会从中尝到苦果了。 Micah Bowers

Chrome 85 使用了 PGO 技术,使新标签页打开速度提升了 10% PGO 即 Profile Guided Optimization,大意是通过记录并分析代码运行时的性能,动态的运用函数内联、条件分支优化等优化策略。 前端之巅

To iterate is human, to recurse, divine. 人理解迭代,神理解递归。 L. Peter Deutsch

一些浏览器高级调试技巧:

    1:使用 $_ 获取上一 REPL 结果;使用 $0 获取选中的节点;
    2:浏览器提供了 copy 函数,用于拷贝对象;
    3:选中节点后,按 H 可以快速隐藏节点;
Chrome开发者工具的11个高级使用技巧@前端之巅

闭包是一个捕获了外部绑定的函数,即使这个绑定存在的作用域被销毁,它仍然能被闭包所使用。 《JS 函数式编程》

浏览器的用户界面有很多彼此相同的元素,如地址栏、前进后退刷新主页按钮、书签... 奇怪的是,浏览器的用户界面并没有任何正式的规范,HTML5 也没有定义浏览器必须具有的用户界面元素。这是多年来的最佳实践自然发展以及彼此之间相互模仿的结果。 浏览器的工作原理:新式网络浏览器幕后揭秘

项目依赖多种版本的 NodeJS? 昨天在重构去年写的一个 Markdown 解析器,项目使用 Rollup 打包,同时还使用 Gulp 处理项目引用到的 Stylus 文件。期间出现了一个奇奇怪怪的问题:Gulp 将会在高版本 Node 环境中打包失败报错,而 Rollup 正好相反,它在低版本 Node 环境中打包会报错... 查了各自文档的,文档没有说明具体支持到哪个版本的 Node 环境。最后只好用 NVM 装了两个版本的 Node,然后全局使用高版本 Node,再找到 Gulp 在 NPM 文件夹中对应的入口文件(gulp.cmd、gulp.ps1),把脚本中的 Node 路径写死为低版本 Node,才解决了问题。 Lionad

猴子补丁。

// 在运行时对功能做出修改
undefined = true
Monkey patch

这个网站不包含任何 JS 代码:

https://www.swiftbysundell.com/articles/

swiftbysundell

几种创造倾斜文本的方法:

    1:em tag;
    2:i tag;
    3:font-style;
    4:Unicode;
    5:Variable fonts;
Chris Coyier

Safari 14 将会支持 WebP、浏览器扩展、网页翻译、视频画中画、BigInt 等功能。 Safari 14 Beta 版发布

IaaS 时代,基础设施即服务,用户不再需要购买实体硬件设施,预示着云计算时代的开启; SaaS 时代,软件及服务,各种线上能力开始在云端喷薄而出; BaaS 时代,仅提供应用依赖的第三方服务,只以 API 的方式提供应用依赖的后端服务; 而在 FaaS 时代,用户直接提交代码包即可实现运行和部署,开发者不再关注底层,Serverless 必然将在这个阶段开始繁荣。 佘磊@前端之巅

心流是触达的通畅,是思考的愉悦,以及融合与创造时的成就。 心流即想法。想法用以解决问题,心流即设计。 我希望我会尽可能地选择去站在永恒的那一面。 Lionad

本文最后更新于: June 14 2021 21:04