[gelöst]Mit CSS ein Drupal-Theme erstellen

am 22.10.2014 - 00:04 Uhr in
Ich bin dabei ein Drupal-Theme zu erstellen.
Im Theme-Ordner gibt es die style.css und die meintheme.info.
In der style.css gibt es feste Anweisungen wie
body {
display: block;
margin: 0px;
usw.
}
und selbst definierte, wie
#inhalt {
margin-left: auto;
margin-right: auto;
margin-bottom: 60px;
width: 1000px;
usw.
}
Den Theme-Ordner habe ich hochgeladen und das Theme aktiviert, aber es werden nur Anweisungen, die est definiert wurden (wie z.B. body { ) übernommen. Die Anweisungen, welche ich frei definiert habe (wie z.B. #inhalt { ) werden ignoriert. Muss ich diese Drupal noch irgendwie beibringen oder Drupaleigene verwenden???
Bitte helft mir! Vielen Dank dafür!
- Anmelden oder Registrieren um Kommentare zu schreiben
Ohje, da mischen sich jetzt
am 22.10.2014 - 07:11 Uhr
Ohje, da mischen sich jetzt aber etliche Dinge:
<link>
-Tag im Head der Seite eingebunden ist, hat Drupal alles getan, was es tun sollEs gibt keine Unterscheidung zwischen "festen Anweisungen" und "frei definierten". Bitte beschäftige ich Dich zunächst noch einmal mit CSS und den entsprechenden Selektoren. Wenn der Id-Selektor #inhalt ignoriert wird, stellt sich die Frage, ob es a) überhaupt ein Element im HTML mit der Id "inhalt" gibt und b) ob es vielleicht Fehler in der CSS gibt - Fehler führen dazu, dass die fehlerhaften Definitionen vom Browser ignoriert werden. Bist Du Dir denn sicher, dass diese Anweisungen ignoriert werden, oder kann es andere Umstände geben, dass Du diese gar nicht siehst? Nutzt Du Firebug oder andere Browsertools um das herauszufinden?
Gibt es denn eine page.tpl.php, in der es ein HTML mit
id="inhalt"
gibt?Aha
am 22.10.2014 - 11:29 Uhr
1. CSS wird nicht von Drupal interpretiert, sondern vom Browser. Wenn Deine CSS-Datei per -Tag im Head der Seite eingebunden ist, hat Drupal alles getan, was es tun soll.
2. Bedeutet: wenn irgendwelche CSS-Definitionen dann nicht funktionieren, liegt es am CSS oder am HTML, nicht an Drupal
Wo liegen denn die HTML-Dateien? Ich dachte immer, man müsse Drupal irgendwie die Anweisungen beibringen.
Bitte beschäftige ich Dich zunächst noch einmal mit CSS und den entsprechenden Selektoren.
Vor Drupal hatte ich mit CSS und HTML (ohne Drupal) gearbeitet und dort war es mir klar, dass man die Anweisungen im HTML (z.B. im div) unterbringen und auf die CSS-Datei verlinken muss, aber bei Drupal dachte ich wär das anders...
Gibt es denn eine page.tpl.php, in der es ein HTML mit id="inhalt" gibt?
Im Theme-Ordner? Nein.
Vielen Dank für deine Hilfe! Ich dachte bisher, dass Drupal vordefinierte Bezeichnungen hat (z.B. header oder so) und ich diese durch meine eigenen (z.B. Kopfzeile) ersetzen muss
LG, david777
david goerke IT-Solutions
Wenn Du im Template keine
am 22.10.2014 - 11:28 Uhr
Wenn Du im Template keine eigene page.tpl.php eingebaut hast, nimmt Drupal die Standard-Template-Datei in modules/system - kopiere Dir diese in Dein Template, dann kannst Du das HTML von dort aus anpassen (Drupal-Caching zwischendurch ein mal löschen, sonst erkennt Drupal nicht die neue page.tpl.php).
Vielen Dank
am 22.10.2014 - 11:37 Uhr
Ich habe schon einige meiner Anweisungen in die page.tpl.php eingebaut und sie funktioniern! Das war es, was ich gesucht habe! Vielen Dank!!!
david goerke IT-Solutions
Zitat: Ich dachte bisher,
am 22.10.2014 - 11:55 Uhr
Ich dachte bisher, dass Drupal vordefinierte Bezeichnungen hat (z.B. header oder so) und ich diese durch meine eigenen (z.B. Kopfzeile) ersetzen muss
Du kannst die bereits von Drupal bereit gestellten IDs und Klassen verwenden, oder auch eigene vergeben, Drupal muß die aber auch finden können.
Ein Beispiel nur für Blöcke:
https://www.drupal.org/project/block_class
Nach der Installation kannst du in einem extra Feld in deinem Block deine eigene Klasse/n vergeben, dies kann Arbeit sparen wenn man viele Blöcke hat die gleich / ähnlich aussehen sollen.
Nur wenn Drupal an der richtigen Stelle von einer überschriebenen ID oder Klasse weiß, kann die auch ausgegeben werden.
Ohne das Modul hast du eine von Drupal standardmäßig vergebene Klasse, die eigentlich in den meisten Fällen ausreicht.
Mit Google Crome, rechte Mouse, Eigenschaften oder Firefox mit der Erweiterung Firebug, kannst du dir alle vorhandenen IDs und Klassen ansehen und auch Änderungen gleich ausprobieren ohne diese erst hochladen zu müssen.
Um einen Einstig zu bekommen kann ich dir http://www.w3schools.com/css/default.asp empfehlen, dort gibt es für jedes Beispiel den "Try it yourself" Button um Live Änderungen auszuprobieren, diese Beispiele müssen dann aber auch noch an die richtige Drupal ID oder Klasse angepasst werden.
Grüße Jenna