网络上最糟糕的默认设置

Avatar of Robin Rendle
Robin Rendle

DigitalOcean 为您旅程的每个阶段提供云产品。 立即开始使用 价值 200 美元的免费积分!

谈到浏览器和网络,有很多很棒的默认设置。 想象一下 HTML 中内置的所有可访问性功能,这样您就不必执行奇怪的操作,例如 Manuel 的这个示例

<h2 role="heading" aria-level="1" class="sr-only">
  Title
</h2>
https://twitter.com/mmatuzo/status/1409493742097154048

您只需编写您的 <h2>,浏览器就会处理可访问性部分。 这就是 我们应该首先使用语义 HTML,然后再为所有内容添加 ARIA 角色的原因。

现代网络还有其他很棒的默认设置,例如响应式设计:许多人已经提到网络默认情况下是响应式的,实际上是我们网页开发人员破坏了它。

然后是 CSS 的默认设置。 我想的是像 flex 这样的东西。 将 display: flex 添加到父元素上感觉非常棒,所有子元素都会自动并排排列,因为这基本上是我想实现的目标。

所以:网络上的默认设置很好!

但也存在很多糟糕的默认设置。 您可能熟悉我最喜欢的网站,即 CSS 设计错误的不完全列表,其中 CSS 工作组列出了 CSS 规范中大量的问题,例如

size 应该是一个 widthheight 的简写,而不是具有不同定义的 @page 属性

这些默认设置很烦人,有些是次要的,有些是主要的。 其中一些可以修复,例如 box-sizing CSS 属性。 是的,网络上曾经有过一段时间,即使向元素添加填充、边框或宽度也会令人困惑。 现在我们不必再那么担心了。

但我认为网络上最糟糕的默认设置是后退键——在大多数浏览器中,它会强制用户返回上一页。 我无数次尝试在输入字段中删除文本,结果突然被拖回上一页,所有数据都丢失了。 这种事情让表单输入感觉如此脆弱,就好像随时可能呼气,整个房子都会坍塌。

旁注:我认为这就是为什么很多人更喜欢原生应用程序而不是网络应用程序。 他们感受到了网络在这些默认设置方面是多么的脆弱。 当您加载应用程序时,感觉像是站在坚实的地面上,而网络应用程序呢? 这是一个随时可能坍塌的摇摇欲坠的房子。

无论如何,我甚至没有意识到 Chrome 在 2016 年就删除了后退键快捷方式! Firefox 今年早些时候也删除了它,然而,直到今天,五年后的今天,我仍然害怕点击那个讨厌的后退键。 如果我点击了错误的键,我会犹豫,然后非常缓慢地确保我专注于正确的输入,除非我删除表单中的所有数据。

我认为这是一项关于软件设计的良好经验教训:首先,默认设置是世界上最重要的事情,而且很难设置正确; 其次,即使您做对了并修复了所有这些糟糕的默认设置,习惯也极其难以改变。