This article is the second in a series on web development for the non-programmer. For the first, go here.
The basis for a web page in almost all cases is Hyper Text Markup Language (HTML) or a closely related language like XHTML. HTML is a standardized "language": a method for encoding content in a document. It's accessible to both humans and programs; it does this by wrapping human-readable text in "tags" that indicate the role of the text in the document. For example, a paragraph of text could be wrapped in "p" tags that tell the browser it is meant to be displayed as a paragraph. HTML also provides "links" to other documents in the form of URLs that can be retrieved either immediately (for embedded content intended to be displayed as part of the page) or when the user performs an action such as clicking on an link (when accessing a separate document such as another web page that's intended to replace the current page).
HTML provides the content, but it provides only rudimentary control over the formatting of the document. For that, most web pages rely on Cascading Style Sheets (CSS), a language specifically designed for formatting. CSS code can be integrated into the document or linked as a separate document. It provides the browser with descriptions of the elements of the document; for example, the color of a piece of text, or the size of an image. CSS is a more volatile language than HTML, and different browsers often display the same document differently. One of a developer's major skill requirements is the ability to make documents appear the same across disparate browsers, or at least to make them look good.
All of these technologies occur on the client's machine after it downloads the document(s) from the server. They don't have access to other documents or programs on the server unless the client retrieves them separately. They depend on the browser to understand them correctly and display their content to the user. Because they are visible directly to the user, they take up much of the focus in web development. Issues regarding these technologies often revolve around the changing standards, such as the new CSS3 and HTML5 versions, and support for various features among the browsers.
There are countless possibilities when remodeling your kitchen. Blend style and innovation with a pull out kitchen faucet, upgrade your design with a modern stainless steel Kitchen Sink, help conserve your food waste with an InSinkErator garbage disposer and keep your kitchen free of smoke and odors with Kitchen range hoods.