Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
MASK - §TCA, Eingabefelder nebeneinander
#1
Hallo Forum,
dies ist mein erster Post hier im Forum, auf das ich über die Googlesuche und die Videos von Wolfgang gestossen bin. Ich habe einige Jahre Erfahrung mit kleineren Projekten, bei denen ich Typo3 bis zur Version 4.4 eingesetzt habe. Nach einer längeren Pause bin ich jetzt bei Version 7.6.9 wieder eingestiegen. Es sind ja tolle Sachen hinzugekommen!!
Die Extension MASK hat es mir besonders angetan, und ich bin jetzt in der Lage ohne PHP-Kentnisse Eingabemasken im BE zu erstellen und mit Fluid/CSS in FE auszugeben. Welch ein Vergnügen.
Was allerdings die Anordnung der Eingabefelder im BE betrifft komme ich nicht weiter. Bei 5-6 Feldern mag das nicht notwenidg sein. Hat man aber 20-25 kleine Felder, ist man bei der Eingabe gezwungen zu scrollen, was nicht so praktisch ist. Die folgenden Screeshots sollen verdeutlichen, was ich anstrebe:

         


In den älteren Typo3 Versionen konnte man über Änderungen an der tca.php Einfluss auf die Gestaltung/Anordnung der Felder nehmen. Bei MASK ist das aber anders organisiert. Folgendes habe ich bisher gemacht:
  •     die 3 Videos von Wolfgang angesehen
  •     die §TCA-Reference studiert
        https://docs.typo3.org/typo3cms/TCAReference/
  •     die rst-Dateien in der MASK-Dokumentation angeschaut
        ../extentions/mask/Documentation/
  •     die php-Dateien in Ordner CodeGenrator angeschaut
        ../extentions/mask/Classes/CodeGenerator
  •     die Datei mask.json im Ordner /typo3.conf endeckt und endlich die erstellten Felder gesehen.
Mir ist nicht klar, wo in MASK die Eingabefelder im Backend dazu gebracht werden, untereinander zu stehen.
Hat jemand im Forum einen Vorschlag?

Mit Grüssen aus Dänemark
Jürgen
Zitieren
#2
Ich kann deine Frage direkt leider nicht beantworten, aber du hast in aktuellen Versionen von Mask auch die Möglichkeit, die Eingabefelder in Reitern (Tabs) zu organisieren, vielleicht hilft dir das ja schon weiter.
Zitieren
#3
Ja, an Tabs habe ich auch schon gedacht. Man könnte die Eingabefelder nach Themen gruppieren, die dann die Reiter bilden. Innerhalb der Tabs bleiben die Eingabefelder aber weiterhin untereinander angeordnet. Ich forsche weiter und poste, wenn es Fortschritte gibt.

Grüsse
Jürgen
Zitieren
#4
Die Tabs kannst du im Mask-Assistenten ganz einfach per Drag'n Drop anlegen.
Zitieren
#5
Sehr einfach einzusetzen; hier hab ich es mal ausprobiert:


         

Geht auf jedenfall in die richtige Richtung.
Zitieren
#6
Nachdem ich mir die Finger wund gesucht habe um das Problem über §TCA zu lösen, hab ich mal den Weg über CSS versucht.

In der Datei

../typo3conf/ext/mask/Resources/Public/Styles/Backend/backend.css

können eigene Styles fürs MASK-Backend hinterlegt werden, sofern man den richtigen Selector erwischt.

Da einige der Eingabefelder im Backend in Blockelemente gekleidet werden, erfolgt automatisch ein Zeilenwechsel.

Zitat:http://www.w3schools.com/css/css_display_visibility.asp

A block-level element always starts on a new line and takes up the full width available (stretches out to the left and right as far as it can).
Examples of block-level elements:
  • <div>
  • <h1> - <h6>
  • <p>
  • <form>
  • <header>
  • <footer>
  • <section>

Über den FF-Inspector bin ich auf den Selector

.form-section + .form-section

gestossen und habe folgendes in der backend.css hinzugefügt:

Code:
.form-section + .form-section  {
       display:inline;
}

Das Ergebnis sieht dann so aus:

   

Schon mal nicht schlecht. Allerdings sind einige Eingabefelder, z.B. Auswahlboxen, anders formatiert und tanzen somit aus der Reihe, wie man beim Feld Objektart deutlich sehen kann.
Also weiter suchen. Bin für jeden Tip dankbar.

Gruss
Jürgen
Zitieren
#7
Du musst bedenken, dass Änderungen in den Extensiondateien beim nächsten Update der Extension überschrieben werden.


Gesendet von iPhone mit Tapatalk
Zitieren
#8
Stimmt, wenn alles funktioniert muss die backend.css "ausgelagert" werden.
Habe ausserdem gerade festgestellt, dass leider nicht nur die MASK-Felder vom geänderten CSS betroffen sind, sondern auch alle anderen Content Elemente, die über:


Code:
<fieldset class="form-section"> … </fieldset>

gestylt werden. Hmm
Zitieren
#9
Ich würde es, glaube ich, vermeiden, im Backend-CSS rumzumeiern. Aber vielleicht hat einer der anderen User hier noch eine Idee?
Zitieren
#10
Wenn man den mit MASK erstellten Felder eine eigene CSS-Klasse zuweisen könnte, wäre es kein Problem. Also statt


Code:
.form-section + .form-section  {
      display:inline;
}

hätte man


Code:
.form-section-tx_mask + .form-section-tx_mask  {
      display:inline;
}

Das ginge. Ohne diese tx_mask-Klasse den richtigen CSS-Attribut-Selektor zu finden ist, wie Du es ausdrückst, rummeiern.
Mit §TCA wäre es mir auch lieber, aber das krieg ich nicht gebacken.
Zitieren


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste