Dynamic website
Main articles: Dynamic web page, Web application, and Progressive web app
Server-side programming language usage in 2016
A dynamic website is one that changes or customizes itself frequently and automatically. Server-
side dynamic pages are generated "on the fly" by computer code that produces the HTML (CSS
are responsible for appearance and thus, are static files). There are a wide range of software
systems, such as CGI, Java Servlets and Java Server Pages (JSP), Active Server Pages and
ColdFusion (CFML) that are available to generate dynamic Web systems and dynamic sites.
Various Web application frameworks and Web template systems are available for general-use
programming languages like Perl, PHP, Python and Ruby to make it faster and easier to create
complex dynamic websites.
A site can display the current state of a dialogue between users, monitor a changing situation, or
provide information in some way personalized to the requirements of the individual user. For
example, when the front page of a news site is requested, the code running on the webserver
might combine stored HTML fragments with news stories retrieved from a database or another
website via RSS to produce a page that includes the latest information. Dynamic sites can be
interactive by using HTML forms, storing and reading back browser cookies, or by creating a
series of pages that reflect the previous history of clicks. Another example of dynamic content is
when a retail website with a database of media products allows a user to input a search request,
e.g. for the keyword Beatles. In response, the content of the Web page will spontaneously change
the way it looked before, and will then display a list of Beatles products like CDs, DVDs, and
books. Dynamic HTML uses JavaScript code to instruct the Web browser how to interactively
modify the page contents. One way to simulate a certain type of dynamic website while avoiding
the performance loss of initiating the dynamic engine on a per-user or per-connection basis is to
periodically automatically regenerate a large series of static pages.
Multimedia and interactive content
Early websites had only text, and soon after, images. Web browser plug-ins were then used to
add audio, video, and interactivity (such as for a rich Web application that mirrors the
complexity of a desktop application like a word processor). Examples of such plug-ins are
Microsoft Silverlight, Adobe Flash Player, Adobe Shockwave Player, and Java SE. HTML 5
includes provisions for audio and video without plugins. JavaScript is also built into most
modern web browsers, and allows for website creators to send code to the web browser that
instructs it how to interactively modify page content and communicate with the web server if
needed. The browser's internal representation of the content is known as the Document Object
Model (DOM).
WebGL (Web Graphics Library) is a modern JavaScript API for rendering interactive 3D
graphics without the use of plug-ins. It allows interactive content such as 3D animations,
visualizations and video explainers to presented users in the most intuitive way.[10]
A 2010-era trend in websites called "responsive design" has given the best viewing experience as
it provides a device-based layout for users. These websites change their layout according to the
device or mobile platform, thus giving a rich user experience.[11]