提升(几乎)每个项目的 CSS 单行代码

Avatar of Geoff Graham
Geoff Graham

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

这类汇总总是让我着迷。我妻子会花几个小时浏览 Zillow 上房屋内部的照片,因为她喜欢看不同的人如何装饰、风水或其他什么。那是她的小小窥探欲。而我呢?我很容易沉迷于开发者随手可得的 CSS 代码片段。

Alvaro 很友好地 分享了他最可靠的 CSS 代码

  1. 限制内容在视口内的宽度
  2. 增大正文文字大小
  3. 增加文本行之间的间距
  4. 限制图像宽度
  5. 限制内容内文本的宽度
  6. 以更平衡的方式包裹标题
  7. 表单控件颜色与页面样式匹配
  8. 易于理解的表格行
  9. 表格单元格和标题中的间距
  10. 减少动画和移动效果

我没有在这里直接贴出代码片段(值得 阅读完整文章 获取代码)。但我确实有一些自己的代码片段想补充。就像 Alvaro 在他的列表开头所说的那样,并非所有这些都适用于每个项目。

全局 border-box 大小

这里 无需解释。它通常是 Web 上任何给定样式表中声明的第一件事。

*, *::before, *::after {
 box-sizing: border-box;
}

我猜 Alvaro 也使用这个,也许它太明显了,不值得列出来。或者,它更像是一个 DX 增强,属于重置而非提升网站本身。

系统字体

Web 上的默认文本太……太……太普通了。我很高兴 Alvaro 同意 16px 作为 Web 上默认的文本 font-size 太小了。我更进一步,也取消了 Times New Roman 的默认字体。我相信有些网站仍在使用它(我自己的个人网站也用了好几年,作为一种极简主义的做法),但如今我个人更倾向于使用操作系统默认的字体。

body {
  font-family: system-ui;
}

我们可以更明确一点,回退到默认的衬线或非衬线字体。

body {
  font-family: system-ui, sans-serif;
}

当然,有 更强大得多的方法,但这基础方法对于几乎任何网站来说都是一个不错的起点。

<body> 中去除水平溢出

哦,天哪,我永远不会犯这种错误。😝

但是假设我犯了——这是一个很大的假设——我喜欢防止它影响访客的滚动体验。一旦 <body> 的内在宽度超出视口,就会出现水平滚动,如果它是故意的,这可能是一件很酷的事情,但如果不是,那就不是很好。

body {
  overflow-x: hidden;
}

我将使用它作为防御机制,但绝不希望将其作为解决 内容溢出可能导致的数据丢失 的实际解决方案。这仅仅掩盖了问题,同时提供了修复根本原因的机会,而无需访客处理渲染结果。

<body> 一些呼吸空间

不多不少,但就像小熊维尼最喜欢的粥一样,恰到好处 的空间,以防止内容紧贴边缘。

body {
  padding-block: 15px;
}

直接链接 →