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

Theming mit SASS

Eingetragen von AndyLicht (260)
am 21.11.2016 - 16:01 Uhr in
  • Themes & Theming
  • Drupal 8.x oder neuer

Hallo Forum,
ich habe mit D7 meine Themes meistens mit Omega gemacht. Jetzt bei D8 habe ich mein erstes Testtheme einfach von Grund auf geschrieben (noch ohne Styling). Ist in der Theorie und Praxis auch kein Problem, jedoch fehlen mir die Vorzüge eines Gridsystems und von SASS. Ich würde gerne sowenig wie möglich Overhead nutzen wollen, daher meine Fragen:

Kann ich ein Gridsystem ohne extra Theme nutzen?
Bietet mir SASS von Haus aus ein Gridsystem (kann ich doch sicherlich über Variablen definieren)?
Muss ich SASS extra installieren (habe da was von PHPsass gelesen)?
Brauche ich Compass, damit die css-Dateien erzeugt werden?

vielen Dank für die Hilfe
mfg
Andy

‹ Von wordpress zu drupal wechseln? Theming mit SASS ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Zen, Foundation, Bootstrap ...

Eingetragen von kissmedve (254)
am 22.11.2016 - 02:14 Uhr

Im Prinzip kannst Du jedes Gridsystem auch ohne Basistheme einbinden. Aber man muss sich ja nicht unnötig Arbeit machen. Das Schöne an Grid-Frameworks ist, dass man sich keinen Kopf mehr um das Funktionieren des Layout machen muss, einschließlich Weiterentwicklung und Updates. Die zugehörigen Basisthemes sind, auch wenn sie schwergewichtiger aussehen, eigentlich nur Boilerplates.

Ich nutze derzeit Zen, hatte aber auch schon Foundation und Bootstrap. Ich habe mir das Subtheme so aufbereitet, dass ich für ein neues Projekt eine Kopie ziehe und diese dann verändere. Damit habe ich die für mich sinnvollen Voreinstellungen, bin aber gleichzeitig maximal flexibel.

Wenn Du Compass installierst, bekommst Du SASS mitgeliefert. Übrigens hat Compass auch eine ziemlich ausgedehnte Mixin-Bibliothek.

Viele Grüße
kissmedve

  • Anmelden oder Registrieren um Kommentare zu schreiben

Das Zen-Theme-Framework

Eingetragen von AndyLicht (260)
am 22.11.2016 - 08:11 Uhr

Das Zen-Theme-Framework schaut sehr interessant aus, leider ist dieses auch noch nicht in einem stable-release zu erhalten. Ich werde es dennoch einmal ausgiebig testen. vielen Dank

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hi, ich habe jetzt ein Theme

Eingetragen von AndyLicht (260)
am 23.11.2016 - 15:52 Uhr

Hi, ich habe jetzt ein Theme mit folgender Ordnerstruktur:

Name
-config
--install
---name.settings.yml
-css
--base
---theme.css
---theme.css.map
-scss
--theme
---theme.scss
-templates
--name.html.twig
--page.html.twig
-name.info.yml
-name.libraries.yml
-logo.png

Hier die Inhalte der Dateien:

#name.settings.yml
logo:
  path: 'themes/hemcau/logo.png'
  use_default: false

#name.info.yml
name: name
description: Mein erstes D8 Theme.
type: theme
core: 8.x
libraries-override:
  core/normalize: false
  system/base:
    css:
      component:
        css/components/clearfix.module.css: false
  classy/base:
    css:
      component:
        css/components/breadcrumb.css: false
        css/components/button.css: false
        css/components/more-link.css: false
        css/components/pager.css: false
        css/components/tabs.css: false
# Define regions
regions:
  header: 'Header'
  content: 'Main content'
  footer: 'Footer'

#name.libraries.yml
global:
  version: 0.1
  css:
    theme:
      css/theme/theme.css: {}
  js:
    js/modernizr.js: {}

Templatedateien:
#name.html.twig
{%
set classes = [
   'region',
   'region-' ~ region|clean_class,
]
%}
{% if content %}
<div{{ attributes.addclass(classes) }}>
   {{ content }}

{% endif %}

{# page.html.twig #}
<div class=page">
    {% if page.header %}
        <header>
            HEADER
            {{page.header}}
        </header>
    {% endif %}
    {% if page.content %}
        <main>
            MAIN
            {{page.content}}
        </main>
    {% endif %}
    {% if page.footer %}
        <footer>
            FOOOOOOTER
            {{page.footer}}
        </footer>
    {% endif %}
</div>

und meine scss-Datei

@import "compass";
html
{
    background-color: yellow;
}
header
{
    background-color: blue;
}

Die Header und Foooter Ausgaben werden übernommen und auch ausgegeben. Aus der SCSS-Datei werden auch css-Dateien generiert, leider haben die keinerlei Wirkung auf das System. Ich vermute, dass ich die Struktur mit der libraries.yml nicht verstanden habe.
Es wäre nett , wenn mich jemand von euch aufklären könnte.

besten Dank
Andy

  • Anmelden oder Registrieren um Kommentare zu schreiben

Lösung:

Eingetragen von AndyLicht (260)
am 23.11.2016 - 16:57 Uhr

entscheidend sind hier die letzten zwei Zeilen!!!!

#name.info.yml
name: name
description: Mein erstes D8 Theme.
type: theme
core: 8.x
libraries-override:
  core/normalize: false
  system/base:
    css:
      component:
        css/components/clearfix.module.css: false
  classy/base:
    css:
      component:
        css/components/breadcrumb.css: false
        css/components/button.css: false
        css/components/more-link.css: false
        css/components/pager.css: false
        css/components/tabs.css: false
# Define regions
regions:
  header: 'Header'
  content: 'Main content'
  footer: 'Footer'
libraries:
- name/global

  • Anmelden oder Registrieren um Kommentare zu schreiben

Wäre vielleicht Bourbon Neat

Eingetragen von johny (98)
am 29.12.2016 - 15:36 Uhr

Wäre vielleicht Bourbon Neat sowas (http://neat.bourbon.io/)? Das "Basic"-Theme verwendet das zum Beispiel + Bourbon (http://bourbon.io) für zusätzliche Mixins.

Wenn du keine zusätzlichen Umwandlungen/Task brauchst (imagemin, uglify, browsersync, etc.), würde ich Node.js und node-sass installieren.

Und wie hier schon gesagt wurde, die Mühe lohnt sich meistens wirklich nicht, ein Theme von Grund auf neu zu erstellen. Bzw. man kann sich dann auch gleich die Templates aus den Core Themes Stable oder Classy ziehen, weil eins von beiden sowieso als Basis-Theme verwendet wird. Ich habe früher auch Zen verwendet, da es aber noch keine für D8 verwendbare Version gibt, bin ich auf "Basic" umgestiegen.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Canvas Palette: Eine fertige Komponentenbibliothek für Drupal Canvas
  • Hilfe zu Updates oder Composer
  • Vergleich Drupal und Contao
  • [geloest] Blocks in Bootstrap nebeneinander darstellen und nicht untereinander
  • DrupalCamp Frankfurt 27-28 November 2026
  • Bitte mein Bentzerkonto löschen
  • Beim Aufruf einiger Inhalte erhalte ich folgende Fehlermeldung
  • Neuinstallation: vermutlich ein rewrite-Problem
  • Drupal CMS installieren
  • [erledigt]MP3 in Drupal 10 einbinden
  • (gelöst)Drupal 11 installieren
  • Titel ausblenden
Weiter

Neue Kommentare

  • Danke ich werde mir die
    vor 4 Wochen 6 Stunden
  • Vielen Dank für Ihren
    vor 4 Wochen 3 Tagen
  • Composer ist sehr ratsam
    vor 4 Wochen 4 Tagen
  • Vielen Dank für den
    vor 5 Wochen 9 Stunden
  • Die alten CMS Vergleiche von contentmanager.de
    vor 5 Wochen 21 Stunden
  • Gut gemacht
    vor 5 Wochen 21 Stunden
  • Layout Builder etc. z.B. für Landing Pages
    vor 5 Wochen 22 Stunden
  • Links
    vor 5 Wochen 3 Tagen
  • Moin,wow, sehr gutes
    vor 5 Wochen 4 Tagen
  • Dass ist eine spannende
    vor 5 Wochen 4 Tagen

Statistik

Beiträge im Forum: 250316
Registrierte User: 20566

Neue User:

  • Robertspaft
  • drupalthemes
  • rofilm

» Alle User anzeigen

User nach Punkten sortiert:
wla9466
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 6 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