smilla hat geschrieben:Ich würde mich gerne umgewöhnen zukünftig Designs bestehend aus DIvs und CSS zu machen und frage mich welches Buch hierfür bestens geeigent ist.
Jedenfalls keines, das sich nur mit <div>s befasst - dann kannst du nämlich auch gleich beim Tabellenlayout bleiben, das ist genauso unschön wie eine <div>-Wüste, aber für dich weitaus einfacher und sicherer anzuwenden.
Wenn es dir um ordentlichen Einsatz von CSS geht, dann verinnerliche als erstes, HTML in seiner ganze Bandbreite zu nutzen und nicht auf die beiden Notnagel <div> und <span> zu reduzieren, die nur für Fälle gedacht sind, in denen beim besten Willen gar kein anderes HTML-Element passt. Wer Überschriften und Absätze in <div>s packt (statt <h1> bis <h6> bzw. <p>), Listen mit <br> realisiert (statt mit <ul>/<ol>) oder Texthervorhebungen mit <span> (statt <strong> / <em>), gar gänzlich auf Tabellen verzichtet, hat den Sinn von CSS nicht kapiert. CSS ist eine Ergänzung zu HTML, kein Ersatz von HTML.
Ich weiß nicht, wie es um deine Englischkenntnisse steht, aber IMHO solltest du einfach einen Blick in die Quelle aller CSS-Geschichten werfen:
https://www.w3.org/TR/CSS21/. Dort ist definiert, wie es gemacht werden soll, es handelt sich somit nicht um Wissen (und schlechte Angewohnheiten) aus zweiter Hand. Die endlose Einleitung kann einen das Fürchten lehren, aber im Kern ist der CSS-Standard verständlicher geschrieben, als er auf den ersten Blick aussehen mag, durch viele Beispiele und Abbildungen verdeutlicht.
Du überspringst deshalb am besten die ersten vier Kapitel und fängst als Erstes mit den
Selektoren an (wie werden HTML-Elemente CSS-seitig angesprochen), schaust dann bei den
Farben & Hintergründen,
Rändern & Rahmen sowie
Schriften vorbei, und arbeitest dich abschließend durch die Details der
Positionierung (Abschnitt 9.3 bis 9.8). Damit hast du die meisten Anwendungsfälle abgedeckt, alles weitere kommt mit der Zeit - und da du dich bis dahin im CSS-Standard gut auskennen wirst, wirst du dann auch wissen, wo du nachgucken musst.
Noch zweieinhalb Tipps: Für die ernsthafte Arbeit mit CSS
unverzichtbar ist a) der
standardkonforme Browser-Modus (ansonsten machen die Browser, wie sie gerade lustig sind, aber nicht, wie's im Standard steht) und b) ein standardkonformer Browser (Opera, Firefox, Safari, etc., aber
nicht der Internet Explorer). Weiterhin solltest du die Unsitte, Elemente pixelgenau auf dem Bildschirm festzuzementieren, von Anfang an vermeiden. Das kann man hier und da machen, aber nicht durchweg. Ein elegentes CSS-Layout passt sich so vielen Gegebenheiten an wie möglich und ist das Gegenteil von „optimiert für eine Auflösung blabla in Browser sowieso“.