Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Themes & Theming ›

CSS-Frage: * margin: 0px macht oft Probleme

Eingetragen von DrupalFan (1646)
am 01.03.2010 - 21:22 Uhr in
  • Themes & Theming
  • Drupal 6.x

In vielen Themes und auch in thickbox.css befindet sich folgende CSS-Anweisung:

* {
margin:0;
padding:0;
}

Leider führt das dazu, dass Tabellenzellen auch Null Abstand haben und cellspacing und cellpadding in Tabellen (mit Richtexteditor wird das oft benötigt) ignoriert wird.

Wie kann man also erreichen, dass obige CSS-Anweisung zwar grundsätzlich gilt aber nicht für Tabellen gilt und bei Tabellen cellspacing und cellpadding ganz normal funktioniert, sprich bei Tabellen margin:0 und padding:0 nicht angewendet wird.

Vielen Dank.

‹ Tausender Trennzeichen anzeigen lassen Probleme mit print.css ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Dann lege doch eine eigene

Eingetragen von wla (9461)
am 01.03.2010 - 22:03 Uhr

Dann lege doch eine eigene CSS-Definition für table an, in der Du die Werte setzt. Später liegende CSS Anweisungen überschreiben frühere. Genauere überschreiben allgemeinere. Im Zweifel für eine bestimmte Tabelle darauf zugeschnittene CSS-Anweisungen schreiben, die die allgemeinen übersteuern.
Es heißt also sich in CSS einarbeiten. Das ist eh für die Webseitenerstellung eine notwendige Grundlage.

Beste Grüße
Werner

  • Anmelden oder Registrieren um Kommentare zu schreiben

Bitte genau überlegen!

Eingetragen von DrupalFan (1646)
am 01.03.2010 - 23:09 Uhr

Tja, Du hast wohl was übersehen. In diesem Fall geht das nicht. Späterliegende CSS-Anweisungen überschreiben natürlich dieses * margin:0.

Aber hier geht es um etwas anderes:
* margin:0 löscht anscheinend cellpadding und cellspacing in der Form, dass wenn table border=0 cellspacing=4 cellpadding=2 verwendet wird, cellspacing und cellpaddiing aufgrund von * margin:0 ignoriert wird. Probier das mal mit Firebug aus, dann siehst Du es.

Nun sag mir jene CSS-Anweisung, die ich nach nachfolgend setzen könnte, um cellpadding und cellspacnig wieder zum Leben zu erwecken?

Sprich ich will keine fixe Anweisung table td {padding:2px; ...} sondern ich will, dass jedesmal wenn eine Tabelle erstellt wird mittels Richttexteditor das cellspacing und cellpadding beliebig genutzt werden kann, was aber wegen * margin:0 nicht möglich ist.

Wie ist das lösbar?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Auf * margin verzichten. Ich

Eingetragen von s.Daniel (331)
am 01.03.2010 - 23:20 Uhr

Auf * margin verzichten.
Ich sehe keinen Grund das so einzusetzen und halte es für sinnvoller auf konkrete Elemente zu gehen wie z.B.

  li
  {
    margin: 0;
    padding: 0;
  }

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ist sehr oft drin

Eingetragen von DrupalFan (1646)
am 01.03.2010 - 23:55 Uhr

Aber wie gesagt ist das auch in thickbox.css drin, man müsste Thickbox hacken und man müsste viele Themes umschreiben, die das alle enthalten!!!

  • Anmelden oder Registrieren um Kommentare zu schreiben

OK das ist natürlich ein use

Eingetragen von s.Daniel (331)
am 02.03.2010 - 13:20 Uhr

OK das ist natürlich ein use case der nicht ganz einfach ist. In themes wird das denke ich eher etwas selten eingesetzt. In jedem Fall würde ich im Zweifelsfall her gehen und die css Datei im Webseiten theme (was ja immer ein subtheme des orginalen themes sein sollte) reinkopieren und den betreffenden Eintrag ersetzen. Das geht auch für thickbox.css.
Deine überarbeitete css ergibt einen Patch für das orginale Projekt. Bei Updates des Moduls wird deine Änderung nicht überschrieben und mit per diff bzw per winmerge o.ä. kannst du schnell sehen ob sich etwas in dem Punkt geändert hat.

Damit jeder das Probem nachvollziehen kann hier ein bisschen Beispielcode:

<html>
<style type="text/css">
* {
margin:0;
padding:0;
}
</style>
<body>

<h4>Without cellspacing:</h4>
<table border="1">
<tr>
  <td>First</td>
  <td>Row</td>
</tr>  
<tr>
  <td>Second</td>
  <td>Row</td>
</tr>
</table>

<h4>With cellspacing:</h4>
<table border="1"
cellspacing="10">
<tr>
  <td >First</td>
  <td>Row</td>
</tr>  
<tr>
  <td>Second</td>
  <td>Row</td>
</tr>
</table>

<h4>With cellpadding:</h4>
<table border="1"
cellpadding="10">
<tr>
  <td>First</td>
  <td>Row</td>
</tr>  
<tr>
  <td>Second</td>
  <td>Row</td>
</tr>
</table>

</body>
</html>

  • Anmelden oder Registrieren um Kommentare zu schreiben

DrupalFan schrieb Aber hier

Eingetragen von Crizzo (15)
am 02.03.2010 - 15:47 Uhr
DrupalFan schrieb

Aber hier geht es um etwas anderes:
* margin:0 löscht anscheinend cellpadding und cellspacing in der Form, dass wenn table border=0 cellspacing=4 cellpadding=2 verwendet wird, cellspacing und cellpaddiing aufgrund von * margin:0 ignoriert wird. Probier das mal mit Firebug aus, dann siehst Du es.

Finger weg von diesen alten HTML-Attributen.

Gestaltung ist Sache von CSS ohne Ausnahme. Das hat im Markup nichts verloren. ;)

* spricht nunmal alle Elemente an und stellt diese alle auf "0". Das ist nicht immer von Vorteil, dass wegen nutzen immer mehr Leute auch nicht mehr *, sondern schreiben p, a, li, ul, ol  .... { margin: 0; padding: 0 ; } und lassen Elemente wie "input" usw. weg.
Mehr dazu: http://xhtmlforum.de/34295-css-prolog-sinnvoll.html

CSS-Grundlagen: The Styleworks.de - CSS Grundlagen
Tabellendesign mit CSS: Reine Auslegungssache — Tabellen-Layouts mit CSS
Viel Spaß. :)

  • Anmelden oder Registrieren um Kommentare zu schreiben

Crizzo, Du hast schon recht

Eingetragen von s.Daniel (331)
am 02.03.2010 - 16:15 Uhr

Crizzo, Du hast schon recht dass cellpadding und spacing nicht schön sind, aber die Gestaltung von Tabellen per wysiwyg Editor kann kaum anders funktionieren (ausser wenn man z.B. an jedes td inline styles dran hängt und das wollen wir ja auch nicht wirklich).

  • Anmelden oder Registrieren um Kommentare zu schreiben

Unterschiedliche Tabellen

Eingetragen von DrupalFan (1646)
am 02.03.2010 - 16:27 Uhr

Ich verwende das ganz aktuelle Modul WYSIWYG und einen Richtexteditor (TinyMCE oder FCKEditor) und das weil der Kunde es so haben will!

Und jetzt kann man damit Tabellen erstellen. Und jede Tabelle kann doch grundsätzlich mal anders aussehen müssen. Sprich die Möglichkeit, cellspacing und cellpadding usw. einsetzen zu können, sollte erhalten bleiben. Trotzdem möchte ich * margin:0 nicht unbedingt entfernen, weil das schon fix im Theme drin ist und dann viele Dinge wohl angepasst werden müssten.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
  • Wie erlaubt man neuen Benutzern auf die Resetseite zugreifen zu dürfen.
  • [gelöst] Anzeigeformat Text mit Bild in einem Artikel, Drupal 11
  • Social Media Buttons um Insteragram erweitern
  • Nach Installation der neuesten D10-Version kein Zugriff auf Website
  • Composer nach Umzug
  • [gelöst] Taxonomie Begriffe zeigt nicht alle Nodes an
  • Drupal 11 + Experience Builder (Canvas) + Layout Builder
  • Welche KI verwendet ihr?
  • Update Manger läst sich nicht Installieren
Weiter

Neue Kommentare

  • melde mich mal wieder, da ich
    vor 1 Woche 3 Tagen
  • Hey danke
    vor 1 Woche 3 Tagen
  • Update: jetzt gibt's ein
    vor 1 Woche 4 Tagen
  • Hallo, im Prinzip habe ich
    vor 2 Wochen 2 Tagen
  • Da scheint die Terminologie
    vor 2 Wochen 2 Tagen
  • Kannst doch auch alles direkt
    vor 2 Wochen 6 Tagen
  • In der entsprechenden View
    vor 2 Wochen 6 Tagen
  • Dazu müsstest Du vermutlich
    vor 2 Wochen 6 Tagen
  • gelöst
    vor 5 Wochen 3 Tagen
  • Ja natürlich. Dass ist etwas,
    vor 5 Wochen 3 Tagen

Statistik

Beiträge im Forum: 250233
Registrierte User: 20451

Neue User:

  • Mroppoofpaync
  • 4aficiona2
  • AppBuilder

» Alle User anzeigen

User nach Punkten sortiert:
wla9461
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 21 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association