<div style="margin-top:160px; width:500px;">
<span id="ueberschrift">
<p>Herzlich Willkommen zur InternetNight</p>
Und wieso ist es schlechtes HTML, wenn ich mit id="ueberschrift" arbeiten möchte, ich persönlich nutze nur ungern <h1>-Tags.
Es geht nicht um id="ueberschrift", sondern um <span>.
Der Sinn von HTML ist es, dem Dokument eine logische Struktur zu geben, also eine, die seinen Inhalt beschreibt und ihm folgt. Mit den aussagelosen <div> und <span> geht das nicht, deshalb sind diese beiden nur Notnagel für Fälle, in denen andere Elemente (wie <h1>) nicht passen.
Aus demselben Grund sind Elemente wie <font>, <b> oder <i> nicht gern gesehen; sie machen eine optische Aussage, aber keine inhaltliche.
Je weniger <div> und <span> Du benutzt, desto leichter lassen sich Deine Seiten selbst auf den absonderlichsten oder ältesten Browsern noch lesen.
Davon unabhängig verhalten sich <h1> & Co. nicht wesentlich anders als <div> und <p>, bei allen handelt es sich um Blockelemente. Lediglich Abstände sowie Schriftgröße und -form müssten per CSS angepasst werden - aber das hattest Du mit dem Setzen von id="ueberschrift" ja sicherlich eh vor, insofern entsteht da kein zusätzlicher Aufwand.
Es gibt also keinen Grund, <hn> nicht zu benutzen. Eher im Gegenteil: Durch display:inline könntest Du <hn> sogar dazu bewegen, sich in der Anzeige wie ein Inline-Element und damit wie <span> zu verhalten, kannst aber trotzdem <p>-Elemente einbetten. Obendrein sparst Du haufenweise Code:
<div>
<span id="ueberschrift">
<p>Herzlich Willkommen zur InternetNight</p>
gegenüber
<h1 id="ueberschrift">Herzlich Willkommen zur Internetnight</h1>
Du siehst: Nur Vorteile :-)
Der Hansel