我们问了我们敬佩的网页构建者同一个问题:今年你在网站构建方面学到了什么? 以下是 他们的回答

我们想感谢我们❥ 的赞助商 Automattic 使这个网站成为可能。他们制作了许多我们使用的优秀软件产品,比如 JetpackWooCommerceWordPress.com

一切皆相对。

我记得坐在我们家斯巴鲁旅行车的后座上。我那时六岁,还没有儿童安全座椅。我爸爸开车,我妈妈在我们开车去某个我记不清的度假地点时,和我玩二十个问题游戏。

轮到我妈妈了,她和我在玩二十个问题游戏。她心里想着一件东西,我负责问问题。

“它很大吗?” 我问道。

“相对于什么?” 我妈妈回答道。

整个游戏都是这个模式。我问一个问题,我妈妈就用一个关于相对性的问题来回答。

“轮到你想东西的时候,你可以问问题。” 我说道。

“如果你问的是这个东西是否和一座山一样大,答案是否定的。但与一只蚂蚁相比,它是很大的。”

今年,我一直在重新学习相对思考的意义。有多长时间?我想也是相对的。但随着2020年的结束,我几乎能听到我妈妈问我同样的问题,无论是在工作中还是在个人生活中。

“相对于什么?” 她问道。


听到“相对”这个词,我的脑海里就跳出了 **CSS 中的相对单位**。我相信你们中的许多人也是这样。在工作中,我总是使用 emrem% 等单位。刚开始学习这些单位时,我使用它们只是为了炫耀(无论何时学习的)。我甚至不知道 emrem 之间有什么真正的区别。我以为它们与视网膜屏幕有关。

当然,那是很久以前的事了。(有多久?相对而言。)我现在知道相对单位是 **相对于它们所引用的东西**。2rem 在根字体大小为 16px 的网站上会以一种方式计算,而在根字体大小为 24px 的网站上则会以另一种方式计算。百分比也是如此。400px 容器内的 50%1200px 容器内的 50% 的含义不同。

所以现在,当我发现自己要给元素分配尺寸值时,我会先和妈妈进行一段小小的对话。

“这个元素是 5.25em。”

“相对于什么?” 她问道。


我还发现,**相对思考需要一点视角**。而且,不,这与 CSS perspective 无关(虽然我可能会尝试建立这种联系)。以相对的方式思考意味着暂时跳出自己的鞋子,从其他事物的角度来看待事物。

我说“其他事物”,因为我认为这种思考方式在编写代码时最为重要。每当我处理组件的各个部分时,我必须注意它们所处的上下文(或视角)。为什么?因为这些部分在不同的上下文中意味着不同的事物,而这些上下文相对于包含它们的组件而言是相对的。

什么时候一个 <h2> 只是一个 <h2>?很少。它可能是帖子名称。或者可能是小部件的标题。也许它是卡片组件的标题。作为前端开发者,我们根据组件的视角来命名这些东西。从帖子的角度来看,一个 <h2> 的意义(可能看起来)与卡片的视角不同。

.post {}
.post__title {}

.widget {}
.widget__title {}

.card {}
.card__title {}

给事物命名很难。 我经常发现自己想,“啊!我应该怎么称呼这个东西?”

“相对于什么?” 我妈妈插嘴道。


我可以继续说下去。事实是,以相对性的方式思考对于我们编写的代码来说与它对二十个问题游戏或我们的个人生活一样重要。在这样一个我们被许多相互竞争的力量颠覆的一年里,以这种方式思考可以为我们许多人提供慰藉和智慧,在压力和沮丧之中——当然,是相对的。

  • “这让我很焦虑。” 相对于什么?
  • “我有太多事情要做。” 相对于什么时候?
  • “我 JavaScript 很烂。” 相对于谁?
  • “我讨厌我现在的工作。” 相对于哪里?

很容易陷入绝对的思维。相对性迫使我们以不同的方式看待事物。