谈到浏览器和网络,有很多很棒的默认设置。 想象一下 HTML 中内置的所有可访问性功能,这样您就不必执行奇怪的操作,例如 Manuel 的这个示例
<h2 role="heading" aria-level="1" class="sr-only">
Title
</h2>
您只需编写您的 <h2>
,浏览器就会处理可访问性部分。 这就是 我们应该首先使用语义 HTML,然后再为所有内容添加 ARIA 角色的原因。
现代网络还有其他很棒的默认设置,例如响应式设计:许多人已经提到网络默认情况下是响应式的,实际上是我们网页开发人员破坏了它。
然后是 CSS 的默认设置。 我想的是像 flex
这样的东西。 将 display: flex
添加到父元素上感觉非常棒,所有子元素都会自动并排排列,因为这基本上是我想实现的目标。
所以:网络上的默认设置很好!
但也存在很多糟糕的默认设置。 您可能熟悉我最喜欢的网站,即 CSS 设计错误的不完全列表,其中 CSS 工作组列出了 CSS 规范中大量的问题,例如
size
应该是一个width
和height
的简写,而不是具有不同定义的 @page 属性
这些默认设置很烦人,有些是次要的,有些是主要的。 其中一些可以修复,例如 box-sizing
CSS 属性。 是的,网络上曾经有过一段时间,即使向元素添加填充、边框或宽度也会令人困惑。 现在我们不必再那么担心了。
但我认为网络上最糟糕的默认设置是后退键——在大多数浏览器中,它会强制用户返回上一页。 我无数次尝试在输入字段中删除文本,结果突然被拖回上一页,所有数据都丢失了。 这种事情让表单输入感觉如此脆弱,就好像随时可能呼气,整个房子都会坍塌。
旁注:我认为这就是为什么很多人更喜欢原生应用程序而不是网络应用程序。 他们感受到了网络在这些默认设置方面是多么的脆弱。 当您加载应用程序时,感觉像是站在坚实的地面上,而网络应用程序呢? 这是一个随时可能坍塌的摇摇欲坠的房子。
无论如何,我甚至没有意识到 Chrome 在 2016 年就删除了后退键快捷方式! Firefox 今年早些时候也删除了它,然而,直到今天,五年后的今天,我仍然害怕点击那个讨厌的后退键。 如果我点击了错误的键,我会犹豫,然后非常缓慢地确保我专注于正确的输入,除非我删除表单中的所有数据。
我认为这是一项关于软件设计的良好经验教训:首先,默认设置是世界上最重要的事情,而且很难设置正确; 其次,即使您做对了并修复了所有这些糟糕的默认设置,习惯也极其难以改变。
后退键被用作后退按钮的故事是什么? 我使用一个老旧的应用程序,它使用 alt+backspace 而不是 Ctrl+Z,这和它有关吗?
关于在表单中丢失数据,您可以通过多种方式丢失数据:单击关闭窗口、按 F5 键等。 当然,使用后退键作为后退键很糟糕,因为它很容易导致您在正常填写表单时丢失数据。
但这揭示了这个问题的另一面:如果浏览器为您保存了这些数据怎么办? Firefox 会这样做,有时甚至不需要这样做。 通常,当我发送一些网站上的消息时,当我再次打开网站时,它会自动填充最后一条消息,即使该网站禁用了输入中的自动完成。 我记得可以禁用它,如果网站使用
<form autocomplete=off>
。 另一方面,我认为禁用它并不理想,而是要更好地检测用户是否可能意外关闭了页面。 嗯,对于大多数情况来说,它工作得很好,但只是这个网站搞乱了这个检测……作为一名重度键盘用户,当我记得 Chrome 将后退键从后退键切换到 Alt+LeftArrow 来导航回一页时,我感到非常失望。 我 99% 的时间都在浏览器中阅读,而不是填写表单,我知道并非每个人都一样,但是需要两只手才能返回一页(或一些奇怪的手部伸展姿势)并不是正确的答案——更不用说键盘没有专用箭头键的问题了。
向前转到您意外离开的页面有什么问题? 表单应该仍然处于您离开时的状态,如果浏览器难以处理边缘情况,它们应该纠正这些情况,而不是更改自互联网早期就生效的键盘行为。 对不起,但我只是不同意后退键是一个糟糕的默认设置。
我相信有一些我没有考虑到的东西,但是更改习惯性的键盘快捷键并要求用户在它们突然不起作用时“查询”它是一种不好的做法。
尽管如此,返回一页的新快捷键还是一个笑话——而且 Mozilla 模仿了 Chromes 的行为。
现在,您不仅需要按两次键,而且还需要两只手才能执行对于浏览器来说至关重要的功能。
非常糟糕的用户体验。 我真的很想知道是什么导致了这个决定。
嗯,对于逻辑
width
,有inline-size
,对于逻辑height
,有block-size
。我不认为网络默认情况下是响应式的……
例如,如果不对 IMG 进行处理,例如
max-width: 100%
,它们会溢出。如果不对长链接进行处理,例如
word-break: break-word
,它也会成为问题。哦,是的,后退键作为“返回上一页”总是会在最糟糕的时候抓住我。 更改的快捷键不会困扰我——我不记得上次购买没有向前和向后拇指按钮的鼠标是什么时候了,我发现这比用那只手伸过来要方便得多。
把我算作那些对他们这样做感到真正恼火的人之一。 在我自己的浏览中,我专门使用 Firefox,当他们禁用后退键作为返回键时,我不得不忘记 20 年的肌肉记忆。 不认为我在罗宾在文章中描述的方式中丢失过数据,至少不是由于意外的后退键造成的。
我知道如何使用箭头键与 alt 键一起使用,但我发现这很不方便,尤其是在 Mac OS 上,使用的是 cmd 修饰键,这与 home 和 end 冲突(虽然必须承认,这种可怕的常用键组合更多是 Mac OS 的错误,而不是浏览器的错误)。