Alice With CSS

This page is a companion to Alice's Adventures in Wonderland - Without CSS. They are intended to be studied together to demonstrate the power of CSS in modern Web design.

Example Text - Discussion

This page displays the same content as Alice's Adventures in Wonderland - Without CSS, except that the CSS is correctly included (unless you're viewing the page with a browser that is incapable of rendering CSS).

This page gives you an example of the power of CSS in both the layout of a page and in the aesthetics of page colour, etc. The "information" is unchanged, but the presentation is clearly superior when CSS is used.

The navigation, page layout and content inside the Example Text are identical. Only this introduction and the discussion is different on each page.

To learn more, see the discussion.

Alice’s Adventures in Wonderland

This section of text is from Chapter IX of Alice's Adventures in Wonderland and is adapted from the Project Gutenberg version.

“You can‘t think how glad I am to see you again, you dear old thing!” said the Duchess, as she tucked her arm affectionately into Alice’s, and they walked off together.

Alice was very glad to find her in such a pleasant temper, and thought to herself that perhaps it was only the pepper that had made her so savage when they met in the kitchen.

“When I’m a Duchess,” she said to herself, (not in a very hopeful tone though), “I won’t have any pepper in my kitchen at all. Soup does very well without—Maybe it’s always pepper that makes people hot-tempered,” she went on, very much pleased at having found out a new kind of rule, “and vinegar that makes them sour—and chamomile that makes them bitter—;and—and barley-sugar and such things that make children sweet-tempered. I only wish people knew that: then they wouldn't be so stingy about it, you know—”

She had quite forgotten the Duchess by this time, and was a little startled when she heard her voice close to her ear. “You’re thinking about something, my dear, and that makes you forget to talk. I can’t tell you just now what the moral of that is, but I shall remember it in a bit.”

“Perhaps it hasn’t one,” Alice ventured to remark.

“Tut, tut, child!” said the Duchess. “Everything’s got a moral, if only you can find it.” And she squeezed herself up closer to Alice’s side as she spoke.

Alice did not much like keeping so close to her: first, because the Duchess was very ugly; and secondly, because she was exactly the right height to rest her chin upon Alice’s shoulder, and it was an uncomfortably sharp chin. However, she did not like to be rude, so she bore it as well as she could.

“The game’s going on rather better now,” she said, by way of keeping up the conversation a little.

“’Tis so,” said the Duchess: “and the moral of that is—‘Oh, ’tis love, ’tis love, that makes the world go round!’”

“Somebody said,” Alice whispered, “that it’s done by everybody minding their own business!”

“Ah, well! It means much the same thing,” said the Duchess, digging her sharp little chin into Alice’s shoulder as she added, “and the moral of that is—‘Take care of the sense, and the sounds will take care of themselves.’”

Return to top

Discussion

CSS is used on this page to separate the layout from the content.

Traditionally, many Web designers used "invisible" tables (by making the border value "0") to place sections of the page where they want. However, this method has tremendous weaknesses in two major areas: accessibility and editing content.

Accessibility

Because tables are laid out in the following format:

<table>
  <tr>
   <td>Row 1, Column 1</td>
   <td>Row 1, Column 2</td>
   <td>Row 1, Column 3</td>
  </tr>
  <tr>
   <td>Row 2, Column 1</td>
   <td>Row 2, Column 2</td>
   <td>Row 2, Column 3</td>
  </tr>
</table>

the content makes sense if it is used to present standard tabular data, as was intended by the designers of HTML.

For example, if you were to present the following table:

Windows Open or Closed Survey
Day: Windows Open: Windows Closed: Total Windows:
Friday 12 48 60
Saturday 20 40 60
Sunday 46 14 60

The person could probably discern that the days were getting progressively warmer and/or there were more people home during the three days recorded in the table.

However, if you then "massage" the use to represent headers, navigational areas, etc. this can be confusing because the logical flow of the data is disrupted:

<table>
  <tr>
   <td>Navigation</td>
   <td>Content: My Introduction</td>
   <td>Right Column Content</td>
  </tr>
  <tr>
   <td>A Links Listing</td>
   <td>More Content</td>
   <td>Credits Information</td>
  </tr>
</table>
Demonstrating Inappropriate Table Use
Navigation My Introduction Right Column Content
A Links Listing More Content Credits Information

Imagine eading the table across each row, then down and again across, with real content in the table (instead of labels). Confusion would quickly set in.

Editing Content

Separating layout into the CSS file removes much of the HTML that would otherwise need to be present. There is much less to deal with when editing the content, making edits much easier than if the layout was encumbered with additional markup.

Navigation

Look at the navigation as an example. The entry on the page appears just like a list but is redefined in the CSS to display either horizontally (like the breadcrumb at the top of this page) or vertically (like the navigation on the left of the page) with additional enhancements.

The information is unchanged, but the presentation is clearly superior when CSS is added.

The natural layout of these page elements is easier to see in Alice's Adventures in Wonderland - Without CSS, but I'd rather view it with the CSS enabled, wouldn't you?

Return to top

www.RussHarvey.bc.ca/resources/alice1.html
Updated: November 14, 2008