## 回归HTML优先的Web开发
多年来,React、Angular 和 Vue 等 JavaScript 框架主导了现代 Web 开发。然而,一种日益增长的趋势是,即使是大型企业,也在转向像 htmx 这样的“HTML 优先”框架,优先考虑更传统、服务器驱动的方法。这种转变源于日益增长的“JavaScript 臃肿”——平均网页现在加载超过 650KB 的 JavaScript,有些网站甚至超过 50MB,影响性能,尤其是在移动设备上。
HTML 优先框架通过减少对大型客户端引擎的依赖,提供简单性和速度。它们不采用复杂的组件树和状态管理,而是专注于从服务器发送 HTML 并交换页面部分,从而产生显著更小的代码库(htmx 约为 14KB,而 React 约为 44KB)。
这种方法可以提高性能、SEO、可访问性,并与新兴的 AI 驱动搜索保持一致。虽然不适用于高度交互式应用程序,如游戏或实时编辑器,但它非常适合仪表盘、管理工具和内容型网站。“孤岛架构”——将静态 HTML 与有针对性的 JavaScript 交互结合起来——正在获得关注,Astro 和 htmx 等框架正引领这一潮流。凭借高度的开发者满意度和快速增长,HTML 优先代表了对核心 Web 原则的务实重新发现。
## Bear Blog 被 Google 降权之谜
这篇文章详细描述了 Bear Blog (blog.james-zhan.com) 尽管设置正确且最初已被索引,却被 Google 降权的一段令人沮丧的经历。问题始于作者在 Google Search Console (GSC) 中意外尝试验证博客的 RSS 订阅源。 之后不久,几乎所有文章都被降权,而 GSC 也未提供明确的原因。
经过广泛的故障排除,在 Bear Blog 开发者 Herman 的宝贵帮助下,排除了域名问题 (GoDaddy 与 Porkbun)、内容质量、缺乏内部链接和 CSS 代码的问题。 其他搜索引擎*能够*索引该博客,表明这是一个 Google 特有的问题。
最终,作者将博客迁移到 journal.james-zhan.com,实施了 URL 重定向,现在允许 Google 自然索引新站点,避免提交到 GSC。 根本原因仍然未知,作者希望从任何可能遇到过 Google 和 Bear Blog 类似问题的人那里获得见解。
## Gamma 与感知线性带来的困扰
Gamma 校正作为数字色彩中不可避免的一部分,最初让作者感到沮丧,因为它效果与直觉相反。在图形着色器中看似线性的渐变,渲染到标准 sRGB 显示器上时会显得*不对劲*——暗色调显得过亮,亮色调显得失真,尽管在技术上它们是物理线性的。
这并非缺陷,而是人类感知的必然结果。我们的眼睛对暗部区域的对比度变化更敏感,这意味着一个真正*感知*线性的渐变需要非线性的亮度值分布。
sRGB 编码利用了这一点,有效地压缩亮度信息,以在感知的最敏感区域最大化细节。直接渲染到 sRGB 格式可以自动处理很多问题,但要实现真正意义上的感知线性渐变,必须在输出颜色之前*撤销* sRGB 校正,使用类似 `srgb_eotf` 的函数。
归根结底,理解 Gamma 并非为了追求物理上的精确,而是为了创造出对人眼*看起来*正确的图像,有效地利用有限的位深,以获得最佳的视觉对比度。