Ich weiss echt nicht was alle immer gegen CSS haben.
Es geht viel nicht in CSS. CSS hat seine Kinderkrankheiten. Das stimmt. Jedenfalls in dem CSS, was die gemeinsame Menge alle Browser darstellt.
Und trotzdem ist das verfügbare CSS immer noch tausendmal besser als das HTML-Gefrickel. Schaut nur mal den Quellcode an. CSS kann nicht alles, was mit HTML mal in Mode war, dafür kann es andere Dinge. Vor allem ist es aber sauberer und bequemer.
Und meistens ist das CSS-Bashing eh ungerechtfertigt. In 80% aller Fälle hat der Programmierer es einfach nicht verstanden, was das Konzept von CSS ist, und wie man damit umgeht.
Viele Fangen an, mit <div>s ihre eigenen Elemente zu kreieren. Völliger Blödsinn, HTML bietet auch für logische Elemente eine passende Standardformatierung an. Andere wiederum wollen CSS dazu missbrauchen, ihre Tabellenlayouts anders umzusetzen.
@Nachtrag; Dirk: "würde ich nen browser schreiben, würde ich nicht jedesmal nachprüfen ob ein element mit dem namen schon gerendert worden ist."
Völliger Blödsinn. Es geht hier gar nicht um die Darstellung. id ist ein Attribut, was für den logischen Dokumentaufbau gedacht ist. Benötigt man vor allem bei Javascript. Die Browser zeigen das lediglich richtig an, weil die davon ausgehen müssen, dass Leute zu dämlich sind, sich mit HTML und CSS mal anständig auseinanderzusetzen. Willst du jedenfalls auf der Seite was Javascript verändert, wird es kläglich scheitern.