CSS or Cascading Style Sheets has opened up tremendous possibilities for improving web site designs, web page layouts and adding new features. The HTML code can be made shorter, cleaner and simpler by CSS resulting in faster loading of web pages, and making them more accessible to search engines. Here I am narrating my experience with only one part of CSS - using it to eliminate tables.
If you look at a traditionally designed web page, you are likely to find number of tables in layout. Tables were earlier used only for displaying information in a tabular form. But web site designers soon started using tables for other applications such as showing images, graphics and other decorations.
My own web pages were earlier checkerboards of tables. Each web page was almost fully covered with tables and many tables were nested inside other tables. As I tried to add more features design became more and more complicated resulting in longer loading times. It also took lot of time to "adjust" tables on page to make it acceptable.
It was not an easy task to redesign all pages using CSS. But once I started, improvements were more than I had bargained for. The design became simpler, appearance improved and loading time came down considerably. The code looked real clean. Most of "td" and "tr" tags were gone.
My purpose of this exercise was not really to change appearance but to make design simpler. Now tables which were earlier used only for design purpose have been eliminated. For eliminating tables first step is to decide which tables or more specifically which cells have to be removed. For applying CSS each cell of a table can be considered as a "box". These boxes are given separate identities and description of each "box" goes into CSS code. The "boxes" can be given names such as box1, box2 etc. The description of "box" can include size, its location on web page, background color and image if any, font details, padding, border details etc. The location of "box" can be made "fixed" on web page, or it can be floating in which case location can be defined with respect to another "box".