Template “fhs-left-right-17x”
Dessen Pflege ist zumindest vorübergehend eingestellt (Mai 2025).
Responsive Template für CMSimple_XH ab Version 1.7.4 – sollte auch mit früheren Versionen kompatibel sein.
- Overlay-Menü (Menülevel1-9)
- 2 Newsboxen (leicht erweiterbar, siehe template.htm "Newsboxes", keine css-Anpassung notwendig)
- Links für Impressum und Datenschutz in der template.htm vorbereitet.
Schriften
Standard-Schriftart: "Open Sans Condensed" von Google-Fonts.
Schriftformate: font-style: normal (font-weight: 300 und 700) und font-style: italic (font-weight: 300).
Bilder
Hintergrundbild: unsplash.com
Lizenz
Für private und kommerzielle Seiten nutzbar, unter Einhaltung von GPLv3 verwendbar.
Die Rechte Dritter bleiben unberührt.
Bild mit transparenter Textbeschriftung über CSS3
https://www.html-seminar.de/aufgabenloesung-css3-farben-hsla.htm
Blocksatz
Ein Text sieht meist schöner aus, wenn der Blocksatz angewendet wird. Um den Blocksatz zu erreichen, wird Weißraum zwischen den Wörtern eingefügt. Das erreicht man bei Deutsch damit, dass bei text-justify nicht auto eingefügt wird, sondern inter-word. Diese Form ist gebräuchlich für Sprachen, die Wörter mit Leerzeichen trennen, wie z.B. Deutsch.
Mit neuen Browsern (Juni 2020 bisher nur: Internet Explorer 11 und Firefox ab Version 77) wird der Blocksatz inzwischen realisiert, wenn im Template entsprechend die Datei «stylesheet.css» erweitert bzw. geändert werden.
1) In der «template.htm» muss es aus <html lang="<?=$sl;?>"> für deutsch in <html lang="de"> geändert werden. Das ist aber bereits für die Silbentrennung erfolgt.
2) In der «stylesheet.css» kannst du das aktivieren, wenn Du die Eigenschaft dem Element body { (bitte hierauf achten!) zuordnest. Bitte beachte, dass es mehrere Stellen mit body {
/* hier stehen weitere Eigenschaften */
}
geben kann. Alle sind mit hyphens:auto; -webkit-hyphens:auto; -moz-hyphens:auto; -ms-hyphens:auto; zu ändern (sihe unten).
body {
/* hier stehen weitere Eigenschaften */
text-justify: inter-word; /* hier stehen weitere Eigenschaften */
hyphens:auto; -webkit-hyphens:auto; -moz-hyphens:auto; -ms-hyphens:auto;
}
Box mit Schatten
Eine Seite sieht meist schöner aus, wenn Boxen mit Schatten dargestellt werden. Ich verwende hier ein angepasstes Template.
Ein paar weiter Infos dazu bei Stephan Heller.
Dieses ist ein einfaches Boxdesign.
In der Datei stylesheet.css im Template muss dieses eingefügt werden:
/* www.css-wiki.com/css-eigenschaft/box-shadow */
#box-shadow {
border: 1px solid #000;
background-color:#FFFFA8;
width: 90%;
height: auto;
padding: 20px;
box-shadow: #999 10px 10px;
}
Das kann am Ende der Seite geschehen.
Auf der Seite wird das Template über Seite ⇒ Seitentemplate ausgewählt und gespeichert.
In der eigentlichen Seite wird dieser Code im HTML-Quelltext-Fenster an der entsprechenden Stelle eingetragen (die abgerückten Klammern < und > müssen entsprechend geändert werden).
< div id="box-shadow">Box mit Schatten</div >
Template “fhs-left-right-17x” – Original-Design
So sehen die Bereiche im Original-Template aus:




Dieses Template veränderte ich und passte es an meine Vorstellungen an.
Silbentrennung
Ein Text sieht meist schöner aus, wenn Silbentrennung angewendet wird. Dann sind beim eingestellten Flatterrand rechts keine so großen Lücken, weil eventuell lange Worte in die neue Zeile umgebrochen werden. Ich verwende hier ein angepasstes Template und habe keine händischen Änderungen vorgenommen.
Ein paar weiter Infos dazu: Ein paar weiter Infos dazu bei Stephan Heller. Die Angaben zur Browserunterstützung in css-wiki.com sind leider nicht immer auf dem aktuellen Stand. Schau lieber hier nach: CanIUse, developer.mozilla.org und bei Torsten Landsiedel.
Mit neuen Browsern (Mai 2025: Firefox 138, Internet Explorer 11, nicht MS Edge und Opera im normalen Text, jedoch bei der Tabelle) wird die Silbentrennung inzwischen realisiert, wenn im Template entsprechend die Dateien «template.htm» und «stylesheet.css» erweitert bzw. geändert werden. Chrome sträubt sich seit Jahren strikt gegen eine Silbentrennung, die bei Mehrspaltigkeit und dem dabei meist gewünschten Blocksatz (justify) unerlässlich wäre.
Die automatische Silbentrennung funktioniert nur mit gleichzeitiger Sprachangabe im HTML-Element nach dem Muster (1).
1) In der «template.htm» muss es aus <html lang="<?=$sl;?>"> für deutsch in <html lang="de"> geändert werden.
2) In der «stylesheet.css» kannst Du das aktivieren, wenn Du die Eigenschaft dem Element body { (bitte hierauf achten!) zuordnest. Bitte beachte, dass es mehrere Stellen mit body {
/* hier stehen weitere Eigenschaften */
}
geben kann. Alle sind mit hyphens:auto; -webkit-hyphens:auto; -moz-hyphens:auto; -ms-hyphens:auto; zu ändern (sihe unten).
body {
/* hier stehen weitere Eigenschaften */
hyphens:auto; -webkit-hyphens:auto; -moz-hyphens:auto; -ms-hyphens:auto;
}
"hyphens" klappt auch in der Tabelle, meistens! Dafür ist dieser Code einzutragen.
<table style="-moz-hyphens: auto;">
| Beispiel 1 | Beispiel 2 | Beispiel 3 | Beispiel 4 |
| Orthopädietechnik | Kinderversorgung | Orthopädieschuhtechnik | Meistersprechstunde |
Es funktioniert auf diese Weise nicht mit responsiven Tabellen.
Um den Effekt wie unten hinzubekommen, muss in der stylesheet.css des Templates beim Aufruf table.respTable – (tables responsive / horiz. scrollable)
white-space: nowrap; gelöscht werden. Dann funktioniert es auch mit der Silbentrennung in responsiven Tabellen.
| Beispiel 1 | Beispiel 2 | Beispiel 3 | Beispiel 4 |
|---|---|---|---|
| Orthopädietechnik | Kinderversorgung | Orthopädieschuhtechnik | Meistersprechstunde |
Obwohl hyphens von aktuellen Browsern nur mäßig unterstützt wird, entspricht die Funktionalität dem, was in der Praxis häufig gefragt ist. Durch den Wert auto wird die automatische Worttrennung aktiviert, wie dies in den modernen Textverarbeitungsprogrammen üblich ist.
Für Webseiten, bei denen Inhalte über ein CMSimple_XH eingegeben werden und das Einfügen von weichen Trennzeichen oft nicht möglich ist, kann hyphens eingesetzt werden und damit wenigstens eine Standardanforderung erfüllen.
Der Einsatz von hyphens ist eigentlich unbedenklich. Nutzer mit Browsern, die hyphens bereits unterstützen, profitieren davon, weil Texte dann flächenfüllender dargestellt werden. Unterstützt ein Browser diese CSS-Eigenschaft nicht, kommt es trotzdem zu keiner Fehldarstellung.
hyphens hat das Potential, in Zukunft Texte einer Seite mit der optimierten Worttrennung anzuzeigen.
Beispiel 1:
Ist bei hyphens der Wert auto „aktiviert”, so erfolgt die automatische Worttrennung durch den Browser. Voraussetzung ist aber, dass eine entsprechende Sprache im HTML (im head für die komplette Seite, oder wie hier, in dem p-Tag) definiert ist, damit die Silbentrennungsregeln der verwendeten Sprache angewendet werden können. In diesem Beispiel 1 ist die Sprache „de” (für Deutschland) für das p-Tag definiert.
Einzelhandelskaufleutegehälter, Donaudampfschiffskapitänsmützen und Problembärerfindervorname sowie Problembärerfindernachname sind natürlich selten genutzte Worte. Beispiele mit solchen Wörtern sind aber einfach gut für bestimmte Beispiele!
Beispiel 2:
Im kompletten Bereich von Beispiel 2 ist die Sprache „ru” (für Russland) für das p-Tag definiert. Obwohl die Worttrennung durch hyphens mit auto definiert ist, kommt es hier zu keiner automatischen Trennung, weil die Worte nicht russisch sind.
In der Datei stylesheet.css im Template muss dieses eingefügt werden:
#hyphens { /* Silbentrennung 2: www.css-wiki.com/css-eigenschaft/hyphens */
-webkit-hyphens: auto;
-moz-hyphens: auto;
-ms-hyphens: auto;
-o-hyphens: auto;
hyphens: auto;
}
Das kann am Ende der Seite geschehen.
Auf der Seite wird das Template über Seite ⇒ Seitentemplate ausgewählt und gespeichert.
Darstellung funktioniert in:
Firefox v86.x (64bit)
Internet Explorer 11
Chrome v89.x
Darstellung funktioniert nicht in:
Edge v89.x (64bit)
Opera v74.x
Sprachen
Der Standard-Download von CMSimple_XH enthält als Systemsprachen für das Backend nur Englisch und Deutsch. Obwohl die Haupt-Sprache eigentlich Englisch ist, sind doch die meisten Benutzer, die meisten Forum-Mitglieder und praktisch alle Mitglieder des Entwicklerteams deutschsprachig.
Falls du für andere Sprachen Unterstützung benötigst, findest du Informationen und Sprachpakete zum Download auf der CMSimple_XH-Projektseite.
Wie du auch die Inhalte deiner Website mehrsprachig für deine Besucher darstellen kannst, wird hier beschrieben.
Template “fhs-left-right-17x” – Mein Umbau
Zuerst änderte ich es die einzelnen Bereich im Header:
Oben links fügte ich den ↓ Locator ein. Auf der anderen Seite (rechts) fügte ich die Searchbox ein ↓ und löschte
sie anschließend im Navigationsmenü.
Außerdem entfernte ich das Headerbild und das Logo. Stattdessen fügte ich einen Lauftext (marquee) ein.
Der Hamburger und das "i" für die Newsboxen werden im Template so aufgerufen:
<div class="sb-toggle-left toggle-id-1"><i class="white btn fa fa-bars fa-lg fa-fw"></i></div>
<div class="sb-toggle-right toggle-id-2"><i class="white btn fa fa-info-circle fa-lg fa-fw"></i></div>
Weil weitere Bereiche eingefügt werden sollten, definierte ich diese
<div class="sb-toggle-left-right toggle-id-3"><class="locator"><?=$tx['locator']['text'] . ' ' . locator();?></div>
<div class="sb-toggle-right toggle-id-4"><?=searchbox();?></div>
und fügte sie genau darunter ein mit der fortlaufenden ID ein.
Für die Klasse ID3 ergänzte ich im CSS des Templates diese Erweiterung:
.sb-toggle-left-right { /* damit es eine weitere Möglichkeit gibt, für den Locator die "Mitte" in der Zeile einzustellen */
float: left;
display: inline-block;
padding: .5em 0 1em 0; /* damit es einen Abstand von 0,5em zum oberen Rand gibt und der Locator in der "Mitte" der Zeile ist */
color: #fff;
margin: .25em .5em;
cursor: pointer;
}
Interessanterweise brauchte ich für die Klasse ID4 keine andere CSS-Definitionen; es genügte die von
.sb-toggle-right.
Für den Marquee-Lauftext fügte ich im template.htm dies an dieser Stelle ein:
<div id="header">
<div id="banner">
<div class="bannerBrand">
<?=$tx['template']['text1']?><div class="marquee">Nichtkommerzielle Website rund um CMSimple_XH von Michael Zajusch</div><!-- SLOGAN Text1 from language config -->
</div>
In der Sprachdatei (cmsimple → languages → de.php) muss diese Zeile
$tx['template']['text1']="Text 1 für entsprechend vorbereitete Templates"; in
$tx['template']['text1']=""; geändert werden.
Im CSS fügte ich am Ende dies ein:
/* Start: running text - marquee */
@keyframes marquee {
0% { text-indent: 100% }
100% { text-indent: -100% }
}
div.marquee {
width: 100%;
margin: 10px;
padding: 7px 0 7px 0;
overflow: hidden;
white-space: nowrap;
animation: marquee 20s linear infinite;
}
div.marquee:hover {
animation-play-state: paused;
cursor: not-allowed;
}
/* Ende: running text - marquee */
Um den Footerbereich kleinerzu machen, änderte ich bei stylesheet.css bei #footer dieses:
margin: 0; /* original 2em 0 0; */
padding: 0; /* original 1em 0; */
font: normal 1.1em PTsans-Narrow, Arial, Helvetica, sans-serif;
min-height: 5em; /* original 10em; */
Viewport Resizer
Wenn schnell überprüft werden soll, wie die Webseite beim Skalieren des Browser-Fensters reagiert und die Logik der Media-Queries unter die Lupe genommen werden sollen, gibt es eine Reihe von Tools zur Unterstützung. Mit dem Viewport-Resizer von Malte Wassermann gibt es ein sehr nützliches Bookmarklet, das den Viewport mit nur einem Klick auf die richtige Größe bringt.
