前端开发中的大脑思考

Avatar of Chris Coyier
Chris Coyier

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

作为一名前端开发人员,工作的一部分就是应用不同的技术和方法来实现所需的 UIUX。也许您与设计团队合作并实现他们的设计。我知道当我查看设计时(即使我知道我不会构建它),我的前端大脑也会开始触发与任务相关的所有事情。

让我们看看我的意思。

查看来自 Riko Sapto Dimo 的 美食菜谱网站的精美 Dribbble 作品

这是一个非常吸引人的设计,其中包含大量需要从前端网页设计和开发角度考虑的内容。

我们将主要讨论设计模式选择和 HTML/CSS 技术选择。前端开发的工作远不止这些。可访问性!性能!语义!设计系统! 这些也都是非常重要的方面。

多行填充文本

啊,是的,文本具有跟随文本行长度的背景的这种外观。我们过去将其称为 多行填充文本,并研究了许多实现方法。处理它的最简单、最现代的方法是使用box-decoration-break

查看 Chris Coyier 在 CodePen 上撰写的名为 使用 box-decoration-break 实现多行填充 的 Pen (@chriscoyier)。

Flexbox 头部

该头部区域非常适合使用 Flexbox。它是一个单向布局,包含不同大小的元素以及它们之间的不同间距。用 Flexbox 表达它将比任何其他方法都更容易,并且不需要任何固定大小或魔法数字——更不用说灵活了!

网格布局

此处页面整体布局可以用 CSS 网格 精美地表达。请记住,Flexbox 和网格并不矛盾。放置在网格单元格中的元素可以是 Flexbox!就像上面的头部一样,这非常有意义。作为网格单元格的主内容区域和页脚,可能都可以使用这两种方法。

垂直书写

这并非最容易实现的事情!您最好的选择是使用书写模式。 Jen Simmons 已经写过这方面的内容,以下是一个演示

查看 Jen Simmons 在 CodePen 上撰写的名为 书写模式演示——标题 的 Pen (@jensimmons)。

行截断

看起来我们在这里进行了一些截断。从整体性能的角度来看,我们可能希望发送的数据仅几行长。但是,如果必须,前端也可以提供帮助。此处显示三行文本,末尾带有省略号。也许设计确实需要副本始终最多为三行。这称为 行截断

查看 Chris Coyier 在 CodePen 上撰写的名为 行截断 的 Pen (@chriscoyier)。

自定义字体

与当今大多数网站一样,此设计也使用了自定义网络字体。对于如此醒目的设计,我会非常小心我的 字体加载技术。我的直觉告诉我,我更喜欢 FOIT 而不是 FOUT,理想情况下,我会尽可能地缓存该字体文件,这样我们就不会经常遇到这两种情况。

图像上的文本

“晚餐菜单”文本正位于下方一些繁忙的照片图像之上。尽管如此,它仍然可读,这主要是因为文本的亮白色与较暗的图像形成对比。 我们过去详细介绍过对此进行思考。白色文本放在较暗的图像上通常是最佳选择,并且足够暗,以至于几乎任何图像都可以。不过,还有其他选择,例如渐变和 模糊(此处的页脚也使用了模糊)。

查看 Chris Coyier 在 CodePen 上撰写的名为 ByKwaq 的 Pen (@chriscoyier)。

SVG 图标/星级评定

设计中散布着许多简单的矢量图标。这些肯定是 SVG 图标系统的最佳选择。 这是我目前推荐的 SVG 图标系统方法。 内联 SVG。简单而强大。

这些星级评定可能也属于 SVG 领域。 这是一个不错的选项集合。 从单选按钮逐步增强似乎始终是一种明智的方法

查看 Jake Albaugh 在 CodePen 上撰写的名为 CSS:单选输入星级 的 Pen (@jakealbaugh)。

汉堡菜单

在像这样的较大屏幕设计中,它可能显得有些多余,尤其是在导航已经可见的情况下。但是,如今很难避免这种情况,并且需要说明的是,无论您在网站的哪个位置查看,都需要对用户进行培训,让他们了解网站导航可能发生的位置。

以下是一些此类菜单的集合。

查看 Eric Grucza 在 CodePen 上撰写的名为 带文本更改的汉堡菜单翻转 的 Pen (@egrucza)。


设计中还有其他我没有提到的内容会立即让您想到吗?