news 2026/8/23 11:51:57

medium.css Demo本地实战:Parcel+Pug+CSS Grid搭建响应式Medium风格文章页教程

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
medium.css Demo本地实战:Parcel+Pug+CSS Grid搭建响应式Medium风格文章页教程

medium.css Demo本地实战:Parcel+Pug+CSS Grid搭建响应式Medium风格文章页教程

【免费下载链接】medium.cssCompact typography for the web项目地址: https://gitcode.com/gh_mirrors/me/medium.css

medium.css 是一套围绕 Medium.com 阅读体验打造的极简 Web 排版样式表,单文件就能让普通博客页面拥有衬线正文、舒适行高与大号首字下沉的"精品阅读感"。本教程带你一步步在本地跑通 medium.css 的 demo 项目:使用 Parcel 构建工具 + Pug 模板 + CSS Grid 布局,10 分钟搭建出一个完全响应式的 Medium 风格文章页,并讲透它的排版与布局原理。零基础也能照做。🚀

一、medium.css是什么?单文件解锁Medium阅读体验

medium.css(核心文件medium.css)本质上是一份约 90 行的"排版说明书",只管三件事:选什么字体、多大字号、什么颜色。它覆盖了h1h2paimarkblockquotecode这些基础 HTML 元素,并提供 3 个自定义类:

类名作用
.first-letter大号首字下沉,横跨两行
.highlighted品牌色背景高亮
.subtitle副标题样式

字体方案参考了 Google Fonts 中最接近 Medium 的三款:正文Lora(衬线)、UILato(无衬线)、标题/引用Playfair Display(衬线),各司其职。

二、先认识demo项目结构

打开项目目录,和这个教程相关的只有 5 个文件:

medium.css/ ├── medium.css # 核心排版样式表(可直接用于任何项目) └── demo/ ├── package.json # demo依赖与启动脚本 ├── src/ │ ├── main.pug # 页面模板(Pug语法,等价于HTML) │ └── medium_extended.css # 排版样式 + CSS Grid页面布局 └── gif/ └── medium.gif # 效果动图

理解这 5 个文件的分工,你就掌握了整个 demo 的骨架:main.pug负责"写了什么",medium_extended.css负责"长什么样"。

三、本地快速上手:3条命令跑通demo

第 1 步:获取代码

git clone https://gitcode.com/gh_mirrors/me/medium.css

第 2 步:安装 demo 依赖(注意要在 demo 目录下执行)

cd demo npm install

demo/package.json中只声明了两个关键依赖:构建工具parcel-bundler和模板引擎pug

第 3 步:启动本地服务

npm start

start脚本实际执行的是parcel src/main.pug:Parcel 会自动编译 Pug 模板和 CSS,并在浏览器中打开本地开发服务器。之后你修改main.pug里的标题或正文,页面会即时热更新,非常适合边改边看。💡

不想用构建工具?直接下载medium.css文件,在 HTML 的<head>里引用即可,零依赖。

四、CSS Grid如何排布响应式文章页

demo 的布局全部写在demo/src/medium_extended.css.container中,核心思路一句话:正文栏固定 740px,两侧自适应

  • 列定义auto 166px 740px 166px auto:两侧auto列自动吸收剩余宽度,正文永远居中
  • grid-template-areas划分三个区域:顶部img(封面+标题+作者)、中部article(正文)、底部footer
  • 正文宽度锁定740px——这是排版黄金法则:一行文字不超过 740px,眼睛左右移动最省力

响应式由两个媒体查询断点完成,无需任何 JavaScript:

屏幕宽度布局形态说明
大于 1072px5 列封面横跨 3 列,正文 740px 居中
740px ~ 1072px3 列封面与正文收窄堆叠
小于 740px1 列手机全屏堆叠,标题块移到封面图上方

五、3个值得照抄的排版技巧

  1. 正文行高 1.58 + 字距 -0.03px:行高留出接近半行的呼吸空间,字距微缩让单词更紧凑,两者搭配阅读最省力。
  2. 柔和文字色:正文用rgba(0,0,0,0.84)而非纯黑,白色背景上观感更温和;副标题再降到rgba(0,0,0,0.54),形成信息层级。
  3. 品牌色点缀.highlighted默认#7DFFB3绿色高亮,作者头像边框同色——换成你的品牌色,整套页面气质立刻统一。

六、改成你自己的Medium风格博客页

跑通 demo 后,改造只需动两个文件:

  • 换标题、副标题、作者信息:编辑demo/src/main.pug中的h1p.subtitle.authorName
  • 换封面图:修改demo/src/medium_extended.css.imagebackground地址
  • 换高亮色:改.highlightedbackground
  • 正式项目中使用npm install --save medium.css或直接引入文件,只保留排版部分

七、常见问题解答(FAQ)

npm start 报错找不到 parcel?demo 依赖的是 Parcel 1.x(parcel-bundler),请确认已在demo目录执行过npm install,也可手动运行npx parcel src/main.pug

字体需要联网吗?样式表通过@import从 Google Fonts 加载 Lora / Lato / Playfair Display,网络受限时会自动回退系统字体,布局不会坏。

不用构建工具能用吗?可以。medium.css是单文件零依赖样式表,下载后直接<link>引入即可。

八、总结

一句话记住本教程:medium.css = 选对字体 + 调好间距 + 固定 740px 行宽。配合 demo 里的 Pug 模板和 CSS Grid 布局,你得到的是一个桌面居中、手机单列、阅读体验直逼 Medium 的响应式文章页 ✍️

【免费下载链接】medium.cssCompact typography for the web项目地址: https://gitcode.com/gh_mirrors/me/medium.css

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/23 11:50:44

软件工程面试高频题解析与实战技巧

1. 软件工程复试面试高频题解析 作为一名经历过多次软件工程面试的过来人&#xff0c;我深知面试准备的重要性。本文将系统梳理软件工程复试中最常被问到的核心问题&#xff0c;并给出专业且实用的回答建议。不同于简单的题目罗列&#xff0c;我会结合自己的面试经验&#xff0…

作者头像 李华
网站建设 2026/8/23 11:45:59

两数之和变种问题解析与面试实战技巧

1. 问题背景与核心挑战 这道快手面试题是经典"两数之和"问题的变种&#xff0c;我在实际面试辅导中发现&#xff0c;超过60%的候选人在面对变种题目时容易陷入固定思维。原题通常要求找出数组中两数之和等于目标值的下标&#xff0c;而变种题往往会增加以下一个或多个…

作者头像 李华
网站建设 2026/8/23 11:40:54

星脑与银河通用:机器人通用运动控制架构的技术解析与实践路径

上周&#xff0c;一个名为“Galbot ET1”的双足机器人视频在技术圈里流传。视频里&#xff0c;它平稳地行走、转身&#xff0c;甚至能适应略有起伏的地面。如果只看这些&#xff0c;你可能会觉得这不过是又一个“波士顿动力模仿秀”。但真正让这个项目与众不同的&#xff0c;是…

作者头像 李华