Ergebnis 1 bis 26 von 26

Thema: CSS-Framework von Contao 3 – was hat sich geändert?

  1. #1
    Contao-Fan Avatar von rusty
    Registriert seit
    07.02.2012.
    Ort
    Hamburg
    Beiträge
    268

    Standard CSS-Framework von Contao 3 – was hat sich geändert?

    Ich versuche hier einmal, die grundlegenden Änderungen im neuen CSS-Framework im Vergleich zu Contao 2.x zusammenzufassen. Ich habe selbst eine ganze Weile gebraucht, um komplett klar zu sehen.
    1. Framework-Komponenten im Layout
    2. interne Stylesheets
    3. externe CSS-Dateien
    4. Zusammenfassung aller CSS-Dateien
    5. Spaltenlayout per Holy Grail
    6. Das Layout ist jetzt responsive


    1. Framework-Komponenten im Layout
    Die gewünschten Komponenten des CSS-Frameworks können nun einfach und übersichtlich im Layout aktiviert bzw. deaktiviert werden:
    • Layout-Builder:
      Fügt die Zeilenhöhen, Spaltenbreiten und Angaben zum "statischen Layout" im head ein, lädt die layout.css, die für die Spaltenanordnung mittels -> Holy-Grail-Technik sorgt, automatisch reduziertes Layout für Bildschirme mit weniger als 768px Breite, siehe Punkt 6.
    • CSS-Reset:
      Lädt die reset.css, die umfassend diverse CSS-Eigenschaften normalisiert, unter anderem werden Abstände angeglichen, Schriftart und Schriftgrößen gesetzt, Listensymbole entfernt ...
    • Responsive Grid:
      Lädt die responsive.css, stellt ein 12spaltiges Grid zur Verfügung, das über Klassennamen wie grid3 oder offset6 genutzt werden kann. Responsive heißt: Auf Bildschirmen von mindestens 980px Breite basiert das Layout auf einer Gesamtbreite von 960px, darunter wird sie auf 744px reduziert. Unterhalb von 768px Bildschirmbreite werden alle Floats entfernt und somit alle Grid-Module untereinander angeordnet.
    • TinyMCE-Stylesheet:
      Wenn aktiviert, werden die dort hinterlegten Styles nicht nur im TinyMCE für das Format-Menü genutzt, sondern auch im Frontend angewendet.

    Die Originale der 3 erstgenannten liegen auch in unkomprimierter Fassung im Ordner assets/contao/css. Sie sollten natürlich nicht an dieser Stelle verändert sondern bei Bedarf in eigenen Styles überschrieben werden. Früher mussten Zusätze wie Reset oder Grid manuell geladen werden.


    2. Interne Stylesheets
    Keine wesentlichen Änderungen meines Wissens, CSS3-Verläufe wurden an eine neue Syntax angepasst


    3. Externe CSS-Dateien
    können nun im Layout unter "Zusätzliche Stylesheets" ausgewählt werden. Die Einbindung per "Zusätzliche <head>-Tags" oder per fe_page ist somit nicht mehr nötig.
    Allerdings: Eine media-Angabe (screen, print, ...) ist hier nicht vorgesehen und muss ggf. in der externen Datei mit @media geregelt werden.


    4. Zusammenfassung aller CSS-Dateien
    Alle CSS-Framework-Komponenten, internen Stylesheets sowie "Zusätzlichen Stylesheets" werden zu einer CSS-Datei zusammengefasst, um http-Requests zu sparen. Ist in den Globalen Einstellungen die Option "Skripte komprimieren" aktiviert, werden interne Stylesheets komprimiert, die Framework-Dateien sind es ohnehin. Die "Zusätzlichen Stylesheets" werden nicht komprimiert.
    Für das Debugging kann es ein Nachteil sein, mit "Zusätzlichen Stylesheets" zu arbeiten, da sich in der zusammengefassten Datei natürlich die Zeilennummern ändern und somit das Auffinden per Firebug o.ä. erschwert wird.


    5. Spaltenlayout per Holy-Grail
    Die verwendete Technik für Spaltenlayouts hat sich komplett geändert. Geblieben ist der Grundaufbau mit festen Breiten bei den Seitenspalten und einer flexible Hauptspalte. (Die Flexibilität der mittleren Spalte kommt natürlich nur zum Tragen, wenn der #wrapper flexibel ist.)

    Vorher: Im 100% breiten #container stehen zuerst die Seitenspalten #left und #right, die jeweils gefloatet werden. Die #main-Spalte ist statisch und hält nach rechts und links per Margin Abstand zum Rand des #container.

    Holy-Grail: Der #container ist mittels Padding links und rechts auf die Breite der Hauptspalte reduziert. Innerhalb des #container werden zuerst #main, dann #left und #right aufgeführt. Alle werden nach links gefloatet. Um die Seitenspalten in die seitlichen Padding-Zonen des #container zu verschieben, wird eine Kombination aus negativem Außen-Margin und relativer Verschiebung (linke Spalte) verwendet:
    Code:
    #right { margin-right: -100%; }
    #left { margin-left: -100%; right: 123px} /*je nach Spaltenbreite */
    Details: siehe http://alistapart.com/articles/holygrail

    Vorteil des Holy Grail: Content first.
    Nachteil: Es können keine prozentualen Spaltenbreiten verwendet werden!

    [Nachtrag]
    Mit wenigen Zeilen CSS könnte man sogar noch equal heights realisieren. Grundgedanke ist, dass der Container zwar mittels linkem und rechtem Padding auf die Breite der Mittelspalte geschrumpft wurde, dieses jedoch genau so gut mit Border oder Margin erreicht werden kann:

    Code:
    /* equal heights: gleich lange Spalten mit fetten farbigen Borders in der Stärke der Spalten */
    #container {
    	padding: 0;
    	border-left: 123px solid #fff;
    	border-right: 234px solid #fff;
    }
    Code:
    /* equal heights: gleich lange Spalten mit Spalten-Trennlinien und Margins in der Breite der Spalten */
    #container {
    	padding: 0;
    	border-left: 1px dashed #ccc;
    	border-right: 1px dashed #ccc;
    	margin-left: 123px;
    	margin-right: 234px;
    }

    6. Das Layout ist jetzt responsive!
    Der Layout-Builder enthält von vornherein ein Media-Query, das für Bildschirmbreiten unterhalb von 768px den Holy-Grail abschaltet und somit alle Spaltenbereiche in 100% Breite untereinander anzeigt. Auch die #wrapper-Breite wird aufgehoben und passt sich der Bildschirmbreite an. Höhenangaben für #header und #footer entfallen ebenfalls.
    Wer das unbedingt verhindern will (was schade wäre), muss die Anweisungen mittels eigenem Media-Query wieder überschreiben. z.B. so:

    Code:
    /*Layout-Builder Media-Query überschreiben */
    /*in diesem Beispiel ist #left 200px und #right 250px breit */
    @media (max-width:767px)
    {
    	#wrapper {
    		margin: 0 auto;
    		width: 960px;
    	}
    	#header {
    		height: 240px;
    	}
    	#footer {
    		height:100px;
    	}	
    	#container {
    		padding-left: 200px;
    		padding-right: 250px;
    	}
    	#main, #left, #right {
    		float: left;
    	}
    	#main {
    		width: 100%;
    	}
    	#left {
    		width: 200px;
    		right: 200px;
    		margin-left: -100%;
    	}
    	#right {
    		width: 250px;
    		margin-right: -100%;
    	}
    }
    Geändert von rusty (24.11.2012 um 16:42 Uhr)

  2. #2
    Contao Core-Team
    Association Vorstand
    Avatar von andreas.schempp
    Registriert seit
    15.06.2009.
    Ort
    Lyss
    Beiträge
    5.622
    Partner-ID
    8667
    Contao-Projekt unterstützen

    Support Contao

    Standard CSS-Framework von Contao 3 – was hat sich geändert?

    Soweit ich mich erinnern kann, lässt sich für externe CSS Dateien schon einen Media-Type definieren. Ich weis allerdings nicht genau wie der Syntax ist, aber das müsste zumindest in einem GitHub Ticket stehen.
    terminal42 gmbh
    Wir sind Contao Premium-Partner! Für Modulwünsche oder Programmierungen kannst du uns gerne kontaktieren.
    Hilfe für Isotope eCommerce kann man auch kaufen: Isotope Circle

  3. #3
    Mag....
    Gast

    Standard

    Hallo zusammen,

    danke erstmal für den Beitrag.. dieses Hoily macht mich doch sehr kirre... Aber nun weis ich glaub ich, warum meine eine Demo Seite so
    komisch auf dem Smartphone aussieht...

    ->Nachteil: Es können keine prozentualen Spaltenbreiten verwendet werden!

    VG
    Marco

  4. #4
    Contao-Fan Avatar von rusty
    Registriert seit
    07.02.2012.
    Ort
    Hamburg
    Beiträge
    268

    Standard

    Zitat Zitat von andreas.schempp Beitrag anzeigen
    Soweit ich mich erinnern kann, lässt sich für externe CSS Dateien schon einen Media-Type definieren.
    Hallo Andreas. Der Tooltip sagt:
    Hier können Sie Stylesheets aus dem Dateisystem hinzufügen (z.B. files/css/style.css|screen|static).

    Ich habe jetzt versucht, "|screen" in den Dateinamen hineinzufabrizieren. Tatsächlich hat es den Effekt, dass ein Attribut media="screen" hinzugefügt wird. Allerdings wird die Datei dann nicht mehr gefunden

  5. #5
    Contao-Fan Avatar von rusty
    Registriert seit
    07.02.2012.
    Ort
    Hamburg
    Beiträge
    268

    Standard Equal heights und Holy Grail

    Eine gute und einfache Lösung für die Optik von gleich langen Spalten ohne Einsatz von Grafiken habe ich oben nachgetragen. Die Anregung dazu fand ich im CSS-Buch "Fortgeschrittene CSS-Techniken" von Corina Rudel und Ingo Chao.

  6. #6
    Contao-Urgestein Avatar von tblumrich
    Registriert seit
    25.06.2009.
    Ort
    Feldberger Seenlandschaft
    Beiträge
    2.225
    Partner-ID
    7979
    User beschenken
    Wunschliste

    Standard

    Dickes Danke!
    Da versteht man doch gleich einiges besser, ohne das man sich live intensiver mit den Neuerungen auseinander setzen muss.

    Vorschlag: Damit man diesen nützlichen Beitrag immer gut findet, fände ich eine Verlinkung im Thread "Tipps und Tricks zum Update auf Contao3" sehr gut. Dieser ist ja oben hervorgehoben und somit findet man das sehr schnell.

    Gruß
    Thomas
    blucomp | Webdesign & Onlinelösungen

  7. #7
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.559
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Das Thema ist dort bereits verlinkt.
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  8. #8
    Contao-Nutzer Avatar von Toad
    Registriert seit
    18.02.2010.
    Ort
    NRW
    Beiträge
    177

    Standard

    Hallo.

    Kann mir jemand sagen wie ihr darauf kommt, dass prozentuale Spalten nicht möglich sind? Gibt es dazu irgendwo eine Aussage der Contao-Entwickler? Ich finde dazu nämlich keine Aussage.

    Grundsätzlich beißt sich so ein Layout nämlich nicht mit prozentualen Angaben:
    http://matthewjamestaylor.com/blog/perfect-3-column.htm


    Ich mache mir hier nämlich so meine Gedanken:
    https://community.contao.org/de/show...alten&p=235689


    Holy Grail ist demnach nicht Holy Grail. Ich würde es sehr begrüßen Details über "Contao Grail" zu haben. Ohne, dass ich in den Systemdateien nachschauen muss. Dann wäre es doch leichter sein CSS gleich woanders zu besorgen und einzubinden. Das ist doch aber nicht der Sinn, oder?

    Der heilige Grahl ist wohl nach wie vor noch nicht gefunden.

    Gruß.
    while(!asleep()) {sheep++;}

  9. #9
    Contao-Nutzer
    Registriert seit
    05.01.2011.
    Beiträge
    107

    Standard

    Zitat Zitat von Toad Beitrag anzeigen
    Holy Grail ist demnach nicht Holy Grail.
    Auf http://www.alistapart.com/articles/holygrail/ heißt es auch "In Search of the Holy Grail".
    Meistens reicht es wenn sich die breiteste Spalte an die Gesamtbreite anpasst (das geht mit dem Holy Grail - Framework wenn Diese in der Mitte sein soll). Schmale, flankierende Spalten vertragen Prozentuelle Breiten eh nicht gut.
    Geändert von plastiko (02.12.2012 um 12:53 Uhr)
    MfG
    Jens

  10. #10
    Contao-Nutzer Avatar von Toad
    Registriert seit
    18.02.2010.
    Ort
    NRW
    Beiträge
    177

    Standard

    Hallo.

    Dann hat er es wohl näher zum Grahl gebracht: http://matthewjamestaylor.com/blog/perfect-3-column.htm

    Warum beziehen sich hier alle auf http://www.alistapart.com/articles/holygrail/ ??? Ist doch bloß die halbe Wahrheit.


    Übrigens ist sein "centered top menu" auch Klasse und bis auf Submenüs ohne Anpassung nutzbar. Nur centeredmenu im Navmodul als ID eintragen.
    while(!asleep()) {sheep++;}

  11. #11
    Contao-Fan Avatar von rusty
    Registriert seit
    07.02.2012.
    Ort
    Hamburg
    Beiträge
    268

    Standard

    Hallo Toad, hast du dir das prozentuale Layout von Matthew James Taylor mal angesehen? Er verwendet ein deutlich anderes Prinzip zur Positionierung und auch eine andere DIV-Struktur mit 2 zusätzlichen Verschachtelungen. Ich wäre ehrlich gesagt kaum in der Lage, seine Vorgaben von 25% breiten Seitenspalten mit 2% breiten Abständen an eigene Bedürfnisse anzupassen. Sein Prinzip muss man auch erstmal komplett durchschauen, um z.B die Spalten auf 20% oder 30% umzubauen, mit einfachen width-Angaben ist es nicht getan.
    Den Begriff "Holy Grail" hat er sich letztlich nur geliehen.

    Ich gebe dir Recht in dem Punkt, dass ein Optimum an "Responsivität" eigentlich prozentuale Breiten erfordert.

    Einige schlaue Köpfe haben ja zumindest prozentuale ("fluid") Grid-Systeme erdacht, z.B diese beiden:
    http://www.tinyfluidgrid.com/
    http://designinfluences.com/fluid960gs/

  12. #12
    Contao-Nutzer
    Registriert seit
    04.12.2009.
    Beiträge
    86

    Standard

    Hallo Rusty,

    habe da ein paar Verständnis Fragen zu den Neuerungen, das verwirrt für Anfänger doch ganz schön.

    Haben den Artikel zum Holy Grail gelesen, aber in dem Beispiel wird ein Layout benutzt was über die komplette Breite des Browsers geht.
    Verstanden: #left,#right sind fest #main wir verkleinert beim ziehen des Fensters.
    So diese Technik ist jetzt in der Layout.css / was passiert den mit einem Layout von 960-980px Mittig und nicht Vollbild? Das geht auch mit der Layout.css ?
    Oder ist das Grid jetzt für das alte 980px mittig Layout gedacht?
    Was ist mit alten CSS Daten aus 2.0 Zeiten gridpx, reset .... das beisst sich doch alles ?

    Das Responsive Verhalten lässt sich durch überschreiben der CSS verändern, soweit klar werde ich mal testen, finde das nicht grade schön das einfach vorgesetzt zu bekommen. Da wäre doch ein Haken in System zum aktivieren/deaktivieren die schöne Lösung gewesen.

    Gruß
    Zwergenmeister

  13. #13
    Contao-Nutzer Avatar von Toad
    Registriert seit
    18.02.2010.
    Ort
    NRW
    Beiträge
    177

    Standard

    @rusty:

    Ja, ist mir mittlerweile auch aufgefallen.
    Die Spalten klappen da auch nicht in voller Breite unter #main. Ob man das kombinieren kann und mit min-width steuern ist noch unklar. Nachgebaut habe ich es, aber es ist nicht wirklich besser.
    Wenn ich Zeit habe experimentiere ich weiter ...
    while(!asleep()) {sheep++;}

  14. #14
    Contao-Fan Avatar von rusty
    Registriert seit
    07.02.2012.
    Ort
    Hamburg
    Beiträge
    268

    Standard

    Zitat Zitat von Zwergenmeister Beitrag anzeigen
    Haben den Artikel zum Holy Grail gelesen, aber in dem Beispiel wird ein Layout benutzt was über die komplette Breite des Browsers geht.
    Hallo Zwergenmeister,
    In Contao wird das gesamte Layout mit einem Wrapper-Div umschlossen. Innerhalb dieses DIVs spielt sich das Spaltenlayout ab (beim A-List-ApartArtikel wird alles nur vom body umschlossen). Mit der Angabe "statisches Layout" plus Breitenangabe plus "zentriert" entscheidest du selbst, ob das Layout die volle Fensterbreite ausnutzen soll oder der Wrapper in der Breite begrenzt wird.
    Das optionale Grid hat damit nichts zu tun. Ein Grid-System wird oft als Alternative zum Spaltenlayout genutzt, seltener in Kombination damit.

    Zitat Zitat von Zwergenmeister Beitrag anzeigen
    Was ist mit alten CSS Daten aus 2.0 Zeiten gridpx, reset .... das beisst sich doch alles ?
    Nicht unbedingt. Die wesentliche Änderung besteht ja nur in der Art der Spaltenerzeugung. Alles andere sollte exakt wie bisher funktionieren, nur dass die CSS-Module jetzt bequemer einzubinden sind.

    Zitat Zitat von Zwergenmeister Beitrag anzeigen
    Das Responsive Verhalten lässt sich durch überschreiben der CSS verändern, soweit klar werde ich mal testen, finde das nicht grade schön das einfach vorgesetzt zu bekommen. Da wäre doch ein Haken in System zum aktivieren/deaktivieren die schöne Lösung gewesen.
    Da ist was dran ...

  15. #15
    Contao-Nutzer
    Registriert seit
    04.12.2009.
    Beiträge
    86

    Standard

    Zitat Zitat von rusty Beitrag anzeigen

    Nicht unbedingt. Die wesentliche Änderung besteht ja nur in der Art der Spaltenerzeugung. Alles andere sollte exakt wie bisher funktionieren, nur dass die CSS-Module jetzt bequemer einzubinden sind.
    Leider doch ein wenig jage da noch ein paar Darstellungsfehler hinterher die neu sind seit dem Update auf 3.0.1

    Vielen Dank Rusty

  16. #16
    Buchautor 'Websites erstellen mit Contao' Avatar von pmmueller
    Registriert seit
    19.06.2009.
    Ort
    Groningen (NL)
    Beiträge
    1.523

    Standard

    The only thing constant is change...

    Warum macht nicht mal jemand, der im Seitenlayout gerne so ein Häkchen gegen "Responsive Layout Builder" hätte, ein Ticket bei Github auf? Das dauert nicht viel länger als es hier im Forum dauernd zu wiederholen

  17. #17
    Contao-Nutzer Avatar von Toad
    Registriert seit
    18.02.2010.
    Ort
    NRW
    Beiträge
    177

    Standard AW: CSS-Framework von Contao 3 – was hat sich geändert?

    Der Haken ist doch im Grunde da. Das layout-CSS weglassen, fertig.

    Ich denke langsam, dass es bei den layoutbuilder doch eher um Begriffligkeiten geht.
    Jeder meint was anderes, aber jeder meint auch das Gleiche zu meinen.

    Einige andere Begriffe und Konzepte im Contao-Slang sind auch verwirrend. Artikel und Inhaltselemente z.B. wobei für mich ein Artikel eigentlich begrifflich ein Inhaltselement einer Seite darstellt.

    Dann habe ich da ein gewisses Problem mit Theme & Layout. Pro Seitenatruktur kann ich eigentlich nur ein Theme verwenden, da Module ja auch Inhaltselement sein können und diesen ziemlich egal ist in welchem Theme sie stecken. Sie ändern ich in einem "Artikel" nicht wenn sich das Theme ändert. Verlinken von Modulen geht ja auch nicht. Man muss sich für ein Modul aus einem Theme entscheiden. Das hat mich dazu bewogen jetzt immer ein Globales Theme für Module als Inhaltselebts eines Artikels zu nutzen und diese nicht in das Theme des Layouts zu packen.

    Das eigentliche Theme ist für mich das Layout. Die Module gehören eigentlich ausserhalb des Themes.

    Ist aber nur meine Meinung.

    So oder so. Die Begriffe und unscharfen Definitionen helfen nicht gerade in Diskussionen über diese Features. Das führt zu unterschiedlichen Wahrnehmungen des Themas und zum Teil völligem aneinander vorbei reden.

    Man gewöhnt sich zwar an alles, aber A hat sich schon gewöhnt und B noch nicht und nutzt die Begriffe wie im allgemeinen Sprachgebrauch.

    Ich bin dann mal fertig mit philosophieren. Bin eh voll vom Thema ab.

    Gruß.
    while(!asleep()) {sheep++;}

  18. #18
    Wandelndes Contao-Lexikon Avatar von BugBuster
    Registriert seit
    15.06.2009.
    Ort
    Berlin
    Beiträge
    10.522
    User beschenken
    Wunschliste

    Standard

    Vielleicht bringt das etwas Klarheit.

    Mal zur Definition: Layout Builder
    der macht genau das, was es aussagt. Er nimmt die im Layout definierten Spalten und Zeilen und bildet damit das Grundlayout bestehend aus der Holygrail Basis und CSS. Dazu generiert der Layout Builder CSS Angaben im Kopf der Webseite und bindet zusätzlich die layout.css ein.

    Theme:
    bildet die Basis und fasst Layouts (können mehrere sein) , CSS, Module zusammen, sodaß diese komplett exportiert und importiert werden könnnen.
    Es ist möglich, wenn auch aus meiner Sicht unnötig, mehrere Themes innerhalb der Seitenstruktur zu verwenden.

    wobei für mich ein Artikel eigentlich begrifflich ein Inhaltselement einer Seite darstellt.
    richtig, wobei eine Seite mehrere Artikel haben kann, die z.B. in einem Grid basiertem System nebeneinander angezeigt werden um Spalten nachzubilden.
    In dem Artikel sind dann die eigendlichen Inhaltselemente.

    Die Module gehören eigentlich ausserhalb des Themes
    Nein, wegen der export/import Möglichkeit.

    verlinken von Modulen geht ja auch nicht. Man muss sich für ein Modul aus einem Theme entscheiden
    Wie gesagt, warum mehrere Themes?


    Kurz, wenn man ein System wie Contao nicht so nutzt, wie es konzipiert ist, dann muss man sich nicht über selbst gemachte Probleme wundern.
    Geändert von BugBuster (20.12.2012 um 21:24 Uhr)
    Grüße, BugBuster
    "view source" is your guide.
    Danke an alle Amazon Wunschlisten Erfüller

  19. #19
    Contao-Nutzer Avatar von Toad
    Registriert seit
    18.02.2010.
    Ort
    NRW
    Beiträge
    177

    Standard AW: CSS-Framework von Contao 3 – was hat sich geändert?

    Sollten Themes dann nicht neben Modulen, CSS und Layout nicht auch die Seitenstruktur enthalten?

    Mehrere Themes könnten Benutzer-Vorlieben-Responsive gestaltet werden. Auch z.B. um neben universellen Seiten eben auch welche mit Modulen für Menschen mit Einschränkungen zu erstellen. Da können durchaus auch verschiedene Module als Inhaltselement vorkommen.
    Mal abgesehen davon, dass ich es nicht soo weltfremd empfinde dem User die Möglichkeit nicht nur zu geben, sondern auch praktikabel zu machen.

    Richtig wäre:
    Eine Seite kann mehrere Inhalte haben. Unter anderem Artikel.

    Jetzt ist es so: Eine Seite kann mehrere Artikel haben und diese wiederum Inhaltselemente.
    Ist ein Artikel im Wortsinn kein Inhalt?

    Das Wort Theme ist ebenfalls irreführend. Im Allgemeinen wird man annehmen, dass man damit verschiedene Themes für eine Seite erstellen kann, weil es überall so genutzt wird. Das ist aber de Fakto das Layout.

    Für mich wäre es so richtig:
    Seite: Struktur, Inhalt=Artikel, Stylesheets, Module, Theme=Layout.

    So kann man auch mit nicht Contaoanern oder Neulingen ohne Verwirrung sprechen.
    while(!asleep()) {sheep++;}

  20. #20
    Contao-Nutzer
    Registriert seit
    04.12.2009.
    Beiträge
    86

    Standard

    Zitat Zitat von pmmueller Beitrag anzeigen
    The only thing constant is change...

    Warum macht nicht mal jemand, der im Seitenlayout gerne so ein Häkchen gegen "Responsive Layout Builder" hätte, ein Ticket bei Github auf? Das dauert nicht viel länger als es hier im Forum dauernd zu wiederholen
    Weil ich mich mit Github bis jetzt 0 auseinander gesetzt habe, jetzt erstmal einen Account mache und ich auch noch nicht weis wo ich das dann zu posten habe

    Ticket ist offen

    https://github.com/contao/core/issues/5177

    Ticket Closed :-) Leo ist dagegen, ..... Vielleicht melden sich ja mehrere.
    Geändert von Zwergenmeister (21.12.2012 um 10:03 Uhr)

  21. #21
    Wandelndes Contao-Lexikon Avatar von BugBuster
    Registriert seit
    15.06.2009.
    Ort
    Berlin
    Beiträge
    10.522
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von Toad Beitrag anzeigen
    Sollten Themes dann nicht neben Modulen, CSS und Layout nicht auch die Seitenstruktur enthalten?
    Nein, denn bei Themes geht es um Design, nicht um Inhalt. Das Module Inhalte mitbringen ist klar, aber die werden in das Design integriert.

    Zitat Zitat von Toad Beitrag anzeigen
    Mehrere Themes könnten Benutzer-Vorlieben-Responsive gestaltet werden. Auch z.B. um neben universellen Seiten eben auch welche mit Modulen für Menschen mit Einschränkungen zu erstellen. Da können durchaus auch verschiedene Module als Inhaltselement vorkommen.
    Mal abgesehen davon, dass ich es nicht soo weltfremd empfinde dem User die Möglichkeit nicht nur zu geben, sondern auch praktikabel zu machen.
    Verstehe ich nicht. Das lässt sich doch über Module direkt oder Layouts lösen.

    Zitat Zitat von Toad Beitrag anzeigen
    Jetzt ist es so: Eine Seite kann mehrere Artikel haben und diese wiederum Inhaltselemente.
    Ist ein Artikel im Wortsinn kein Inhalt?
    Nein, nur ein Container der Definitionen hat die gemeinsam für alle Elemente dient.
    Diese Diskussion, ob Artikel noch notwendig sind, gibt es woanders schon hier im Forum.

    Zitat Zitat von Toad Beitrag anzeigen
    Das Wort Theme ist ebenfalls irreführend. Im Allgemeinen wird man annehmen, dass man damit verschiedene Themes für eine Seite erstellen kann, weil es überall so genutzt wird. Das ist aber de Fakto das Layout.
    Nein, du hast es immer noch nicht verstanden. Ein Theme ist die Zusammenfassung aller Dinge die zu einem Design führen, welches mehrere Layouts haben kann. Diese Ebene wurde einzig dazu geschaffen, um das komplette Design exportieren/importieren zu können.
    Ein Layout in Contao ist hier u.a. die Definitionen von Spalten und Zeilen sowie welche definierten CSS/Module hier speziell verwendet werden sollen.
    So habe ich z.b. immer 2 Layouts, eines für die Homepage (nur Main) und eines für den Rest (default mit left/main/right)

    Anders gesagt:
    Startseite: Schrank, Titel "Kleiderschrank"
    Seite: eine Tür von mehreren vom Schrank, Titel "Erste Tür"
    Artikel: ein Schubfach von mehreren, Titel "Sockenschublade"
    Elemente: eins oder mehrere Dinge im Schubfach.

    Ein Theme enthält nun alles was den Schrank ausmacht: Farbe, Anzahl Türen, Anzahl Schubladen je Tür, Größe und Breite des Schrankes (statisch, nicht responsive ), sowie ein Foto vom Schrank.

    Schaue dir verschiedene Themes die es kostenfrei gibt an und du wirst das Prinzip verstehen.
    Grüße, BugBuster
    "view source" is your guide.
    Danke an alle Amazon Wunschlisten Erfüller

  22. #22
    Contao-Nutzer Avatar von Toad
    Registriert seit
    18.02.2010.
    Ort
    NRW
    Beiträge
    177

    Standard

    Danke fürs erklären des Contao Slang. Der ist leider klar wenn man es nutzt. Die Begriffe bleiben deshalb trotzdem falsch.
    Wenn man sich nur mit Contao beschäftigt, dann mag man irgendwann Contao werden.

    Ich kann es aber gerne noch mal erläutern:
    Das Theme beinhaltet Module, die in den "Artikeln" durchaus drin sein können. Als Inhaltselement. Das ist damit an ein Theme gebunden. Das Theme ist somit nutzlos ohne die Artikel wenn man beginnt Module als Inhaltselement zu nutzen. Dann ist es "exportierbar", aber nutzlos, solange nicht die Module in den Artikeln wieder hergestellt werden. Es wird also nicht wirklich das "Theme" exportiert. Das ist nämlich kaputt ohne die Module als Inhaltselemente die in der Seite UND als Module im Theme sind. Die ID passt nicht.

    Theme A -> Modul CustomNav, ID 5
    Seite A -> Artikel A -> CustomNav, ID 5
    funktioniert.

    exportieren wir das Theme und importieren das in ein anderes Contao

    Theme A -> Modul CustomNav, ID 5
    Seite B -> Artikel A -> CustomNav, ID 9 oder garkein CustomNav oder 5 verschiedene

    = kaputt.

    Daran erkennt man den direkten kausalen Zusammenhang zwischen Theme und Inhalt und deren "nicht exportierbarkeit"

    Demnach sind Module nicht nur "Theme" sondern auch Inhalt. Oder anders: Der Inhalt ist nicht nur Inhalt sondern auch Theme. Noch weiter runtergekürzt: Die Seitenstruktur beinhaltet die Artikel, die Module enthalten und die sind im Theme enthalten. Das sind gegenseitige Abhängigkeiten.

    Nein, nur ein Container der Definitionen hat die gemeinsam für alle Elemente dient.
    Diese Diskussion, ob Artikel noch notwendig sind, gibt es woanders schon hier im Forum.
    Das Wort Container gefällt mir besser als Artikel. Es ist bezeichnend, dass du es nutzt. Denn es erklärt es viel besser als das Wort Artikel. Der Artikel gehört wie News, et. in den Container. Der Container ist z.B. analog eine Zeitung.

    Zeitung(Container) enthält: Artikel, News, Inhaltsverzeichnis, Kalender, Bilder, Poster, Kreuzworträtsel, Werbung, was weiß ich.
    Ich habe selten ein Kreuzworträtsel in einem Artikel. Bilder schon eher. Das Poster ist auch in keinem Artikel. Kalender auch nicht. Werbung im Artikel muss gekenzeichnet werden und der Artikel gilt dann insgesamt als Werbung. Inhaltsverzeichnisse sind selten in Artikel gebetet. Einiges andere könnte man aber durchaus als Aritkel bezeichnen. Nachrichten beispielsweise. Ob Werbung ein Artikel ist? Geschmackssache.

    Geschäft(Container) enthält: Artikel, Regale, Verkäufer, Kassen, Werbung, Beleuchtung, Schilder ...
    Ein Artikel enthält aber nicht: Regale, Kassen, Verkäufer, Beleuchtung, Schilder ...

    (Wobei ich zugeben muss, dass heutige Geschäfte eher selten Verkäufer beinhalten. Vor allem Baumärkte nicht.)


    Gesetzbuch: Absätze, Paragraphen, Artikel

    Wortbedeutung:
    Handel: bestimmte Art von Ware Journalistik: kurzer, in sich abgeschlossener Text im Rahmen einer Zeitung, Zeitschrift oder eines Buches Rechtswesen: Abschnitt eines Gesetzes, Manifests und dergleichen


    Gruß.
    while(!asleep()) {sheep++;}

  23. #23
    Wandelndes Contao-Lexikon Avatar von BugBuster
    Registriert seit
    15.06.2009.
    Ort
    Berlin
    Beiträge
    10.522
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von Toad Beitrag anzeigen
    Theme A -> Modul CustomNav, ID 5
    Seite A -> Artikel A -> CustomNav, ID 5
    funktioniert.

    exportieren wir das Theme und importieren das in ein anderes Contao

    Theme A -> Modul CustomNav, ID 5
    Seite B -> Artikel A -> CustomNav, ID 9 oder garkein CustomNav oder 5 verschiedene

    = kaputt.
    Theorie oder hast du es probiert?
    Grüße, BugBuster
    "view source" is your guide.
    Danke an alle Amazon Wunschlisten Erfüller

  24. #24
    Contao-Nutzer Avatar von Toad
    Registriert seit
    18.02.2010.
    Ort
    NRW
    Beiträge
    177

    Standard AW: CSS-Framework von Contao 3 – was hat sich geändert?

    Das ist.mir so aufgefallen, als ich mein lokales Theme exportiert habe und Online importiert. Zwischen Inhalt und Theme bestehen eben Abhängigkeiten aufgrund von Modulen die man als Inhaltselemente Nutzen kann.

    Deshalb ja auch die Idee, dass ich Module, die in Artikeln sind in ein globales Theme auslagere. So kann ich lokale Themes ohne Probleme Online stellen. Damit ist die Abhängigkeit gelöst. Das globale Theme gehört bei mir damit untrennbar zum Inhalt. Das eigentliche Theme ist dann unabhängig.

    Ideal wäre es, wenn man die Module Global definieren könnte und diese dann in die Themes verlinkt. Dann könnte man durchaus mehrere Themes parallel nutzen. Die genutzten Module könnten dann, ähnlich wie die Templates behandelt werden. Überhaupt finde ich, dass das Template-Modell Recht gut dafür geeignet ist. Wäre schön, wenn Module ähnlich gehandhabt werden könnten.

    Um es auf die Spitze zu treiben, wäre es unglaublich cool, wenn man so ein global definiertes Modul verlinkt im Theme sogar überschreiben könnte. Also die Einstellungen.
    Ähnlich C++.

    Global:
    Modul Navigation menu <- enthält die ID

    Im Theme:
    menu Topmenu < enthält die Einstellungen
    menu Sidemenu ... Etc

    Dann im Layout:
    Topmenu Kopfzeile
    Sidemenu linke Spalte

    Im Artikel als Inhaltselement:
    menu Embeddedmenu < Einstellungen

    Sorry, doof erklärt. Kann ich auch besser, aber nicht per Handy. Geht auch etwas zu weit.

    Gruß.
    while(!asleep()) {sheep++;}

  25. #25
    Contao-Nutzer Avatar von Toad
    Registriert seit
    18.02.2010.
    Ort
    NRW
    Beiträge
    177

    Standard AW: CSS-Framework von Contao 3 – was hat sich geändert?

    Mir fällt gerade auf:

    Wenn Inhaltsmodule anhand des Namens identifiziert werden würde, dann wäre das simpel gelöst. Muss halt nur der Name stimmen. Wie bei Templates.
    while(!asleep()) {sheep++;}

  26. #26
    Contao-Nutzer Avatar von Toad
    Registriert seit
    18.02.2010.
    Ort
    NRW
    Beiträge
    177

    Standard

    Bei der Suche nach einer Lösung für das Modulproblem habe ich nun eigentlich ein Theme mit mehreren Layouts nehmen wollen. Wobei das auf den allgemeinen Sprachgebrauch für mich das Theme darstellen würde. Dabei stolpere ich dann aber wieder über das unschlüssige Konzept:
    Die Templates sind an das Theme gebunden und somit für jedes Layout nur die Gleichen nutzbar. zumindest bei Templates die man überschreibt und nicht auswählen kann.

    Das Fazit:
    Wirklich unabhängig ist nur die Seitenstruktur.
    Seiteninhalt (Artikel; wenn man Module darin hat), Theme, und Templates sind voneinander abhängig, wenn man nicht sehr darauf achtet das zu vermeiden. Der modulare Aufbau suggeriert das Gegenteil. Es wäre konsequenter Theme und Layout zu verheiraten und dafür Module und CSS wie Templates auszulagern. Eben mit einem Ordner wie es bei den Templates ist. Exportiert werden kann das Ganze dann wie die Templates derzeit. Man gibt die Ordner an die zum Theme gehören.


    Ich sehe Contao nicht negativ. Ich kenne kein besseres CMS als Contao und schon aus diesem Grund schreibe ich das. Es ist eben ein CMS das Perfektionisten anspricht, sehr aufgeräumt ist und eine grundsolide Seite ermöglicht.


    Die Gedanken sind frei.

    Gruß.
    while(!asleep()) {sheep++;}

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 2 (Registrierte Benutzer: 0, Gäste: 2)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •