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 it 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 a page will appear as the designer wishes it to in one browser, it may appear completely differently in another. There are numerous fixes and work-arounds to try to circumvent browser-specific bugs, but it is a tenuous business at best.
Another major limiting factor is the plethora of formats a site might be viewed in. While graphic designers know exactly how large the piece of paper they are printing on will be, a web designer must account for different monitor sizes, different display settings, and even browsers for non-sighted users. Combined, these concerns often leave a design professional struggling to incorporate enough dynamism to make a web page attractive on a range of browser sizes, while creating a layout static enough to allow for the use of images and other necessarily fixed-size components.
In addition to XHTML and CSS, designers often use a number of database driven languages to allow for more dynamism and interactivity on their websites. While useful with smaller sites, such languages become a virtual necessity on any site presenting huge amounts of data.
The possibilities for web design are virtually limitless, although at one point, they were quite constrained by the boundaries of the browser itself. With the advent and flexibility of embedded technologies, these boundaries have been all but removed, allowing for a versatility and dynamism that challenges the imagination of anyone interested in designing for the Internet.