90年代初,浏览网站内容的浏览器比较简单,所以网站也必须相应的简单易用。当时的网站主要是没有字体类型的文字,任何形式的图片都很重要。最早的网站是静态的,不能提供互动、动画或个性化的内容。
为了追求更复杂的Web内容,开发者需要在浏览器中嵌入一种计算机编程语言,使浏览器能够显示交互式的动态内容。当时可供选择的编程语言很多,竞争对手也不在少数,但HTML成为了首选的标记语言,而Javascript则成为了事实上的客户端脚本语言。

级联样式表的开发是通过将网站内容与网站格式分离,使人们对网站的外观有更多的控制权。布局、颜色和字体等内容可以在样式表中指定,并应用于整个网站。

HTML、CSS和Javascript共同构成了今天持久网络体验的基础。
在21世纪初,内容管理系统受到了更多用户的欢迎。CMS增加了一个用户界面,使用户更容易添加和修改网站内容,还增加了主题和脚手架,以帮助简化网站风格的工作。在后端,服务器根据Web流量的要求编译并提供内容。今天,WordPress和Drupal已经首先成为流行的CMS,WordPress为整体Web流量提供了巨大的动力。
当网站由CMS支持时,每次用户访问网站时,页面都是按需构建的。和内容样式模板存储在数据库中,并在用户请求页面时获得和呈现。内容是根据请求动态生成的。在传统的web开发中,内容是在后端呈现的,但React和Vue等Javascript框架的兴起推动了客户端脚本的发展。
所有这些都可以组合起来创建一个动态网站,或者一个可以在需要页面时立即组装内容和样式模板的网站。
目前很多CMS工具向更多用户开放Web开发,但是用户更关注网站的性能。而且缓存和内容交付网络可以缓解一些加载速度问题,但是静态网站的趋势很大程度上是因为对更快网站性能的渴望。
静态网站通常听起来很像这样:一个网站主要由静态资源组成。对于大多数基于传统CMS的网站来说,当用户请求页面时,会编译网页。在静态站点中,工作从预呈现网页在构建期间出现的时刻开始,并将其存储为静态HTML文档),而不是依靠数据库来组合内容,而是向浏览器提供来自静态文件目录的内容。
这样做的好处是,通常会产生加载速度非常快的网站。无需等待动态组装,内容可以立即提供,没有延迟。但是,这种方法的缺点是,预先呈现的标记页面缺乏现代网站所期望的动态响应能力。
正是这种限制导致静态站点包含更多的动态元素。一种这样的方法是所谓的JAMstack,它正在成为构建静态站点的标准堆栈。Javascript使网站具有动态功能,API使开发者能够调用第三方服务,如商业后端或更高层的动态功能或定制,标记将内容呈现的基础描述为静态HTML文件。


