Web design is used as a general term to describe any of the various tasks involved in creating a web page. More specifically, it refers to jobs focused on building the front-end of a web page.
The web consists of myriad pages, presenting information using different technologies and linked together with hyperlinks. There are two basic aspects to any web page found on the Internet. The first is a presentation that the user interacts with, usually visually, while the second is a back-end that includes information for non-human browsers.
The basic markup language used to tell a browser how to present information is called the HyperText Markup Language (HTML). A stricter version of HTML is also widely used, known as eXtensible HyperText Markup Language (XHTML). Using HTML or XHTML, a web designer is able to tell a browser how a web page should appear. In the last few years there has been a push towards separating the underlying structure of a web-page (using HTML) from the visual presentation of the site (using Cascading Style Sheets or CSS). This approach has a number of major benefits in both the short and long term, and is gathering popularity as time progresses.
From a technical standpoint, the act of web design can be quite difficult. Unlike more traditional print media, HTML has a number of variable factors. To begin with, not all browsers interpret HTML according to the standards created by the standard-setting body — the World Wide Web Consortium, also known as W3. This means that while one piece of web design will appear as the designer wishes it to in one browser, it may appear completely differently in another. There are numerous fixes and workarounds to try to circumvent browser-specific bugs, but it is a tenuous business at best.