|
An Introduction To Cascading Style Sheets
by Steve Nash
CSS (Cascading Style Sheets) have been around for a while now, and act as a complement to plain old HTML
files. Style sheets allow a developer to separate HTML code from formatting rules and styles. It seems like many
HTML beginners’ under-estimate the power and flexibility of the style sheet. In this article, I’m going to describe
what cascading style sheets are, their benefits, and two ways to implement them.
Cascading whats?
Cascading Style Sheets...that’s what! They’re what paint is to canvas, what topping is to ice cream... they
complement HTML and allow us to define the style (look and feel) for our entire site in just one file!
Cascading style sheets were introduced to the web development world way back in 1996. They get their name
from the fact that each different style declaration can be “cascaded” under the one above it, forming a parent-child
relationship between the styles.
They were quickly standardized, and both Internet Explorer and Netscape built their latest browser releases to
match the CSS standard (or, to match it as closely as they could).
So, you’re still asking what a style sheet exactly is? A style sheet is a free-flowing document that can either be
referenced by, or included into a HTML document. Style sheets use blocks of formatted code to define styles for
existing HTML elements, or new styles, called classes.
Style sheets can be used to change the height of some text, to change the background color of a page, to set the
default border color of a table...the list goes on and on. Put simply though, style sheets are used to set the
formatting, color scheme and style of an HTML page.
Style sheets should be used instead of the standard <font>, <b>,
<i> and <u> tags because:
- One style sheet can be referenced from many pages, meaning
that each file is kept to a minimum size and only requires
one extra line to load the external style sheet file.
- If you ever need to change any part of your site's look/feel,
it can be done quickly and only needs to be done in one
place: the style sheet.
- With cascading style sheets, there are many, many page
attributes that simply cannot be set without them:
individual tags can have different background colors,
borders, indents, shadows, etc.
Style sheets can either be inline (included as part of a HTML document), or, referenced externally (contained in
a separate file and referenced from the HTML document). Inline style sheets are contained wholly within a HTML
document and will only change the look and layout of that HTML file.
Open your favorite text editor and enter the following code. Save the file as stylesheet.html and open it in your
browser:
<html>
<head>
<title> Cascading Style Sheet Example </title>
<style>
h1
{
color: #636594;
font-family: Verdana;
size: 18pt;
}
</style>
</head>
<body>
<h1>This is one big H1 tag!</h1>
</body>
</html>
When you fire up your browser, you should see the text \"This is one big H1 tag!\" in a large, blue Verdana font face.
Let’s step through the style code step by step. Firstly, we have a pretty standard HTML header. The page starts
with the <html> tag followed by the <head> tag. Next, we use a standard <title>
tag to set the title of the page we are working with.
Notice, though, that before the <head> tag is closed, we have
our <style> tag, its contents, and then the closing </style> tag.
<style>
h1
{
color: #636594;
font-family: Verdana;
size: 18pt;
}
</style>
When you add the style sheet code inline (as part of the HTML document), it must be bound by
<style> and </style> tags respectively. Our example is working with the <h1> tag. We are
changing three attributes of the <h1>’s style: the text color (color), the font that any <h1> tags on the
page will be displayed in (font-family), and lastly, the size of the font (size).
The code between the { and }are known as the attributes. Our sample code has three. Try
changing the hexadecimal value of the color attribute to #A00808 and then save and refresh the page. You
should see the same text, just coloured red instead of blue.
An example of an external style sheet
External style sheets are similar to internal style sheets, however, they are stripped of the <style> and
</style> tags, and need to be referenced from another HTML file to be used.
Create a new file called “mystyle.css” and enter the following code into it:
h1
{
color: #a00808;
font-family: Verdana;
size: 18pt
}
Next, create a HTML file and name it external.html. Enter the following code into external.html:
<html>
<head>
<title> External Style Sheet Reference Example </title>
<link rel=\"stylesheet\" type=\"text/css\" href=\"mystyle.css\">
</head>
<body>
<h1>This is one big H1 tag!</h1>
</body>
</html>
As mentioned above, you can see that the actual code in mystyle.css is exactly the same as it was in the inline
example. In our HTML file, we simply place a <link> tag in the <head> section of our page. The
rel=”stylesheet” attribute tells the browser that the link to the external file is a style sheet. The type=”text/css”
attribute tells the browser that mystyle.css is a text file containing css (cascading style sheet) declarations.
Lastly, the href=”mystyle.css” attribute tells the browser that the actual file we want to load is mystyle.css.
Conclusion
Well, there you have it, a quick look at style sheets and how to implement both an inline and external version.
Checkout the links below if you’ve never worked with cascading style sheets before. You will be surprised at
some of the things you can do with them!
DevArticles.com
WebMonkey
WebReview.com
W3C CSS Validator
About The Author
Mitchell Harper is the founder and senior editor of DevArticles.
DevArticles provides its readers with top quality ASP, PHP and .NET articles, interviews and product reviews.
If you're looking for insider tips and tricks, you'll also find them at DevArticles.
|