Von hand html schreiben ist eh das einzig wahre. Hierbei hilft einem selfhtml (http://selfhtml.teamone.de/).
ok. analysieren wir mal deine "testseite".
1.) <strong> und <b> sind nach html4 und xhtml1(.1) erlaubt. da du aber eigendlich "bold", also fett schreiben willst, ist <b> der richtige tag. spar dir also die lange schreibweise und benutze einfach <b>.
http://selfhtml.teamone.de/html/text/physisch.htm#elemente
http://selfhtml.teamone.de/html/text/logisch.htm#elemente
2.) Du benutzt immernoch <br /> obwohl du im doctype html4 angegeben hast. in html4 schreibt man das nur <br>. Stört die browser in der regel zwar nicht. aber nur weil ein browser über fehler nett "hinwegschaut", ist das noch kein grund es so stehen zu lassen. denn die fehlerkorrektur der einzelnen browser ist sehr unterschiedlich. somit erhält man auch unterschiedliche ansichten. quasi "was denkt sich der browser, hast du mit dem text gemeint". das sowas zu unterschiedlichen ergebnissen führt ist klar.
Unterschiede XHTML/HTML4, besonders bei "leeren" elementen:
http://selfhtml.teamone.de/html/xhtml/unt…#leere_elemente
3.) du vergisst sehr gerne die end-li's (</li>). ist zwar nett zum testen, wie die browser damit klarkommen, aber faktisch baust du da wieder auf die fehlerkorrektur der browser.
Richtige Listen gehen so:
http://selfhtml.teamone.de/html/text/listen.htm#aufzaehlung
4.) Class wird nur bei css-angaben benutzt. nicht um den type einer liste festzulegen. auch wenn browser da hin und wieder nett drüber wegsehen --> wieder ausnutzung der fehlerkorrektur.
Listeneigenschaften:
http://selfhtml.teamone.de/html/text/list…l_eigenschaften
5.) Aber der eigendliche Fehler den du die ganze zeit machst (und auch bei der testseite nicht einmal richtig gemacht hast, nichtmal zu testzwecken) ist, dass du falsch verschachtelst:
Falsch: <strong><ol><li>strong > ol ohne end-li</strong></ol>
Richtig: <ol><li><strong>strong > ol ohne end-li</strong></li></ol>
Um solche fehler zu finden, einfach den Validator (http://validator.w3.org/) benutzen. Der zeigt einem alle fehler auf. Wichtig für den validator sind vor allem 2 angaben: Doctype und Charset/Zeichensatz. Erst wenn die beiden angegeben sind kommt liefert er richtige ergebnisse (weil er sonst nicht weiss wie er prüfen soll).