让我们看看如何使用浏览器的开发者工具来进行设计工作。有一些隐藏的技巧可能会派上用场!
使用复选框切换类
这在尝试从不同选项中选择设计或在不手动在开发者工具中添加类的情况下切换元素的活动状态时非常有用。
为了实现这一点,我们可以使用不同的类并在其中限定样式。因此,如果我们想查看横幅设计的不同选项,我们可以执行以下操作
.banner-1 {
/* Style variation */
}
.banner-2 {
/* Style variation */
}
Google Chrome 使我们能够添加所有这些类并使用复选框切换(显示/隐藏)它们,以便在它们之间进行快速比较。
查看 演示 Pen。
使用 designMode 编辑内容
Web 内容是动态的,因此我们的设计应该灵活,我们应该测试各种类型和长度的内容。例如,输入一个非常长的单词可能会破坏设计。要检查这一点,我们可以使用 document.designMode
直接在浏览器中编辑我们的设计。
这可以帮助我们在不手动编辑源代码中的内容的情况下测试我们的设计。
隐藏元素
有时我们需要隐藏设计中的元素以检查没有它们时的外观。Chrome 开发者工具使我们能够检查元素并从键盘输入 h
以通过切换 CSS 可见性属性来隐藏它。
如果您想隐藏一些元素以截取屏幕截图,然后与您的团队/设计师/经理讨论,这将非常有用。有时我使用此功能隐藏元素,然后截取屏幕截图以在 Photoshop 中模拟一个快速的想法。
截取设计元素的屏幕截图
Firefox 开发者工具中有一个有用的功能,可以截取 DOM 中特定元素的屏幕截图。通过这样做,我们可以并排比较我们的变体,看看哪一个是最佳选择。
请按照以下步骤操作
- 打开 Firefox 开发者工具
- 右键单击一个元素并选择“截取节点屏幕截图”
- 屏幕截图将保存到默认下载文件夹中

如果您想使用 Chrome 进行屏幕截图,也可以。有一个名为“Element Screenshot”的 插件 可以完成几乎相同的工作。
更改设计颜色
在每个设计项目的早期阶段,您可能都在探索不同的调色板。CSS 的 hue-rotate
函数是一个强大的过滤器,它使我们能够直接在浏览器中更改设计颜色。它会导致图像或元素中每个像素的色调旋转。该值可以以 deg
或 rad
为单位指定。
在下面的视频中,我在组件中添加了 filter: hue-rotate(value)
,请注意所有颜色如何变化。
请注意,应用 hue-rotate
会影响每个设计元素。例如,用户头像颜色看起来不正确。我们可以通过应用 hue-rotate
的负值来恢复正常外观。
.bio__avatar {
filter: hue-rotate(-100deg);
}
查看 演示 Pen。
使用 CSS 变量(自定义 CSS 属性)
即使支持仍然不是 完全跨浏览器 友好(它 目前 正在 Microsoft Edge 中开发),我们今天可以获得 CSS 变量的好处。使用它们来定义间距和颜色单位将使通过动态更改微小值来进行巨大更改变得容易。
我为我们的网页定义了以下内容
:root {
--spacing-unit: 1em;
--spacing-unit-half: calc(var(--spacing-unit) / 2); /* = 0.5em */
--brand-color-primary: #7ebdc2;
--brand-color-secondary: #468e94;
}
这些变量将用于整个网站的元素,如链接、导航项、边框和背景颜色。更改开发者工具中的单个变量时,所有关联的元素都将受到影响!

filter: invert()
反转元素
使用 CSS 当您有白色文本在黑色背景上或反之亦然时,这很有用。例如,在标题中,我们在黑色背景上使用白色显示页面标题,通过向元素添加 filter: invert
,所有颜色都将反转。

CSS 可视化编辑器
此功能每天都在变得更好。Safari 具有非常好的 UI 工具来编辑值。Chrome 正在缓慢地向开发者工具添加类似的功能。
Chrome 有一些很酷的东西,例如 box-shadow
、background-color
、text-shadow
和 color
。

我认为这对于不太了解 CSS 的设计师来说非常有用。像这样可视化地编辑事物将使他们能够更好地控制一些设计细节,他们可以在浏览器中调整事物并将结果显示给开发人员以进行实现。
太棒了!
使用 design mode 编辑内容,哇!仅此一项就值回票价。感谢您的见解。
是的,这并不是一个广为人知的技巧。如果我没记错的话,它基本上是 HTML 中
contenteditable
属性的 JavaScript 等效项。就像contenteditable
一样,您可以选择文本并在键盘上按 ctrl-b 或 ctrl-i 来添加粗体和斜体。不确定是否有其他类似的键盘快捷键。此外,使用
document.designMode
允许我们拼写检查任何我们已经发布的现有文档。精彩的文章,谢谢!
好主意!感谢阅读 :)
哇,我怎么不知道设计模式!非常有用。感谢分享
我经常会在浏览器中直接编写 CSS,然后将其复制粘贴到我的编辑器中。这样做不仅可以获得实时的反馈,而且如果搞砸了某些东西,只需刷新一下就可以恢复到之前的状态。
以防万一您不知道,您可以使用 DevTools 工作区设置持久性。
我非常喜欢这篇文章,很棒的技巧。我已经编写 CSS 多年了,但我不知道其中的很多技巧!谢谢!
很高兴您觉得它有用!感谢您的阅读。
所以 Chrome 中的 CSS 可视化编辑器没有像截图中显示的那样用于边距?我也尝试在 Firefox 中检查,但没有成功。这里有人可以解释一下吗?
CSS 可视化编辑器是针对 Safari 的。Chrome 有一些不错的 UI 功能,但不是相同的东西。
“使用 designMode 编辑内容”
或者,只需选择元素并在元素浏览器中编辑其内容即可。无需打开 document.designMode。
我也一直在这样做!
不过很高兴了解到 document.designMode。这篇文章里有很多很棒的技巧。
你完全正确!有时我需要编辑 DOM 中不同元素的内容,所以我觉得懒得逐个浏览它们。:D 添加这行代码将使我能够快速编辑任何内容。
感谢您的阅读。 :)
很棒的文章,很高兴能用 DevTools 学到新东西。“h”技巧很容易被忽略,谢谢!
此外,分享一些关于 Chrome 之外浏览器工具的见解也很棒——我敢打赌我们大多数人使用 Chrome 作为他们的主要开发平台,但我们不要忘记还有其他浏览器和其他 DevTools。来自 Firefox 的那个元素截图真是太棒了!
最后一点,我非常困惑的是,为什么这么多开发者仍然不知道 `designMode`——它已经存在了十多年了,早在 IE 称霸浏览器的时候。好吧,我想这个博客是关于 CSS 技巧的,大多数读者都是 CSS 开发人员,而这项技术源于一个不太常见的 JavaScript 功能。
我想补充一点,如果您想更改一个 单个 元素的内容,您可以在元素树中选择它并在控制台中键入 `$0.contentEditable = true`,或者直接从元素树中添加 `contenteditable` 属性。
哇!这个技巧太有用了,我学到了新东西。非常感谢分享! :)
只想补充一点,“使用 H 隐藏元素”和“designMode”在 Firefox 中也能工作!不仅仅是 Chrome。
我已经习惯了一些。
但是,document.designMode 真是太强大了!这真的很好,非常适合用于字符串限制和其他实验的案例测试。
是的!:D
这些技巧很棒。我最近做了一个演讲,涵盖了其中很多内容以及更多内容。这是我演讲的屏幕录制,我希望有人会觉得它有用。
非常感谢分享,很高兴能观看这个演讲! :)
Firefox 在这个领域真的做得很棒。这些工具令人惊叹,我对此的感觉就像我第一次发现实时重新加载一样。
感谢分享。总是很高兴学习新东西 :-)
Chrome DevTools 中还有一个用于动画缓动效果的贝塞尔曲线可视化编辑器。