HTML/CSS - Formatierung von "*" aufheben?

5 Antworten

Ein CSS Reset sollte grundsätzlich gemacht werden. Plump gesagt bringt man so erst einmal "alle" Browser auf einen Nenner. Danach wie gewohnt neue Eigenschaften samt Werte für einzelne Elemente vergeben. Selektiere die Liste in deinem CSS und vergebe dort neue Werte. Sei es padding, margin usw.

Nochmal kurz etwas zum Universal-Selektor (Sternchen). Aus Performance-gründen sollte dieser hier und da nicht unbedingt verwendet werden, sondern lieber die einzelnen Elemente direkt angesprochen werden. Wenn du mehr erfahren möchtest, einfach mal nach CSS Reset "googlen".

Da kannst du unterschiedliche Ansätze verfolgen, die alle mehr oder weniger schön und alle mehr oder weniger effektiv sind:

  1. Klassen verwenden. Die Einstellungen in eine Klasse schreiben und die allen Objekten per CSS Klasse übergeben. Funktional, aber nicht sehr elegant.

  2. du kannst auch Objekttypen einzeln diese Styles verpassen, also zB allen divs mit div {} oder nur divs einer Klasse mit div.klasse {}. Funktioniert aber nicht mehr so toll, wenn du 2 mal den gleichen Typ mit unterschiedlichen Styles verwenden willst.

  3. Du kannst einfach deinem Content-Div eine ID oder eine Klasse zu weisen und dann die Styles dieser Klasse oder der ID in der CSS Datei unterhalb deiner General-Definition extra definieren. Die Werte werden dann überschrieben. "Reset" der Werte kannst du mit padding: auto; margin: auto; erreichen, dann sollten diese Werte sich so verhalten, als wären sie nie definiert worden. - einfachste und schnellste Möglichkeit, aber soweit ich weiß, bringt das noch ein paar Probleme mit CSS 2. Wenn du CSS 3 hast, ist alles in Butter.

Du kannst die Eigenschaften von Selektoren nicht aufheben, sondern nur überschreiben. Du solltest also für deine Liste gewünschte Abstände in einem neuen Selektor festlegen.

Das die Abstände in deinem Selektor auf 0 gesetzt werden macht so auch Sinn, da jeder Browser sonst seine eigenen Werte verwendet und du dir nie sicher sein könntest, das dein Layout in allen Browsern gleich aussieht. Daher ist es üblich gewisse Werte über einen Reset zuerst mal auf standard Werte zu setzen.

Da du mit dieser Definition auf allen Elementen margin und padding auf 0 setzt, musst du dies bei einer Aufzählung manuell nachbessern.

ul { margin-left: 10px; }

So könnte man es zum beispiel machen.

Woher ich das weiß:Berufserfahrung – Berufliche und private Erfahrung

Kannst du nicht einfach die Content-Div selber im stylesheet formatieren? Das müsste das * ja dann überschreiben.