A simple table
Dogs |
Cats |
canine |
feline |
Rover |
Fluffy |
A slightly more complex table
|
Dogs |
Cats |
Scientific |
| canine |
feline |
Typical Name |
| Rover |
Fluffy |
Adventures in Debugging
1. A slightly more complex table- improved by WIDTH attributes
Notice that I'm also using better indentation, to make it easier
to find missing closing tags, make sure all rows have 3 cells, etc.
|
Dogs |
Cats |
Scientific |
| canine |
feline |
Typical Name |
| Rover |
Fluffy |
2. A slightly more complex table- improved by % WIDTH attributes
Well, after step 1. didn't work, I tried to use % widths.
Notice the use of quote marks around the percents! It matters.
|
Dogs |
Cats |
Scientific |
| canine |
feline |
Typical Name |
| Rover |
Fluffy |
3. Stare at it a bit
I tried varying the widths and %'s and nothing seemed to work.
After putting it away and coming back an hour later, it looked to me
as though I had somehow gotten an extra column in there.
Aha! Then I remembered that when that happens adding borders to the
table will make it easier to debug! This is a great trick/method!
So I tried it.
|
Dogs |
Cats |
Scientific |
| canine |
feline |
Typical Name |
| Rover |
Fluffy |
4. Systematic Omission - Last row
Well, my intuition on the extra column was right.
So I tried commenting out my rows one at a time
to see if I could locate the row causing the problem.
Commenting out code which may be casuing a problem is a
standard trick/method in debugging.
|
Dogs |
Cats |
Scientific |
| canine |
feline |
5. Commenting out the Middle Row
|
Dogs |
Cats |
Typical Name |
| Rover |
Fluffy |
6. Comment out the First Row
Scientific |
| canine |
feline |
Typical Name |
| Rover |
Fluffy |
7. Try to find the First Row Problem
See if the problem is in the empty cell - put an entry there.
Animal |
Dogs |
Cats |
Scientific |
| canine |
feline |
Typical Name |
| Rover |
Fluffy |
8. Try to find the First Row Problem- cont'd.
By now I began to suspect some kind of control character.
Sometimes a non-printing character sneaks into your file and
is almost impossible to find. Since I had done everything by
copy and paste I decided to delete and re-type the first row.
Notice that I also got rid of the width, but left the word
in the first cell.
Animals |
Dogs |
Cats |
Scientific |
| canine |
feline |
Typical Name |
| Rover |
Fluffy |
9. Victory
At this point I was ready to cry. I actually retyped the entire thing
from scratch and got it to work.
But since I'm stubborn, I stare at this code some more and saw that
in both rows 2 and 3 the first cell ended with the tag < td>
instead of the tag </td>. (Note how this is typed.)
So, I fixed that error and...
Animals |
Dogs |
Cats |
Scientific |
canine |
feline |
Typical Name |
Rover |
Fluffy |
10. Clean up
Now it's time to get rid of the borders, and make the columns wide
enough - either by specifying width or by cell padding.
It may take some experimentation to get the widths right.
And I also got rid of the word Animals.
|
Dogs |
Cats |
Scientific |
canine |
feline |
Typical Name |
Rover |
Fluffy |
11. The Finishing Touches - we hope
Align the second and third column in the center,
and make the first column into headings (bold).
|
Dogs |
Cats |
Scientific |
canine |
feline |
Typical Name |
Rover |
Fluffy |
12. The Finishing Touches - at last
Align the first column at the left.
|
Dogs |
Cats |
Scientific |
canine |
feline |
Typical Name |
Rover |
Fluffy |