HTML & CSS-Boilerplate für Projekte bei backslash.
- default.html: Zusätzliche Elemente für Tests aufgenommen:
<mark>
(Hervorhebung von Suchbegriffen),<code>
(Inline-Code),kbd
(Keyboard-Eingaben),.lead
(Lead-Absatztext, zb. für Newsmeldungen). - basics.css:
font-size-adjust: from-font;
ergänzt zur Angleichung der Schriftgrössen (zb. bei Inline-Elementen mit anderer Schriftart oder Fallback-Fonts).
- basics.css: Die Klasse
.optimale-zeilenlaenge
wurde entfernt und im HTML durch das<mark>
Element ersetzt.
- basics.css: «Reduzierte Bewegung» (A11Y) berücksichtigt nun auch das neu animierte Details/Summary-Element.
- print.css: Verbesserte Darstellung des Details/Summary-Elements.
- basics.css: Animiertes Details/Summary-Element (Chrome). Scroll-Margins auch für die Suchtreffer-Hervorhebung mit
mark.highlight
. Hängende Interpunktionen für Safari im Bereichmain :where(p, blockquote)
. Semantischer Hambuger-Zustand via.hamburger[aria-expanded="true"]
. - print.css: Tablesorter-Icons und -Filter werden im Druck ausgeblendet.
- basics.css: Clearfix für Details/Summary-Widget im Editor ergänzt, das sich mit geloateten Elementen – meist Bilder – nicht vertragen hat.
- package.json: Aktualisierte Konfiguration.
- basics.css: Tabelle mit
.reset
vom Basis-Tabellenstyling ausgeschlossen. - application.css: Korrekturen Akkordeon-Styling.
- basics.css: Styling für via
name
-Attribut gruppierte, aufeinanderfolgende Details-Elemente ergänzt. - application.css: Basis-Styling für das neue Bürgerkonto-Menü-Modul ergänzt.
- application.css: Akkordeon-Styling auf neue Klassen und funktionierend mit Grid angepasst.
- application.css: Basis-Styling für das neue Bürgerkonto-Menü-Modul ergänzt.
- application.css: Fix für Sticky-Index, wo in A-Z-Kontaktlisten die Inhalte der Tabellen überlagert wurden.
- basic.css: Kleine Verbesserungen bei Spezifität, Custom Properties und vereinfachten Selektoren.
- application.css: Gallery-Variablen haben mit eigenem Namespace, um nicht mit den Grid-Variablen verwechselt zu werden. Aspect-Ratio für die Gallery-Bilder. Weniger Spezifität.
- default.html: Pfad des helper.js umgestellt auf comet11.
- basics.css: Textausrichtung in Tabellen neu mit Logical Properties.
- basics.css: Basis-Styling für Dialog Popover API.
- basics.css: Rahmenfarbe von Tabellen neu über eine zentrale Variable anpassbar.
- basics.css: Für Googles reCAPTCHA-Badges, die via iFrame in die Seite geschrieben werden, war ein iFrame-Fix nötig.
.grecaptcha-logo iframe { /* Google reCAPTCHA-Badge */
aspect-ratio: auto;
margin: 0;
}
- basics.css: Ungültige Werte bei den Logical Properties von
h5
/h6
korrigiert.
- basics.css / layout.css / responsive.css: In den Section-Kommentaren
MARK:
ergänzt, damit diese in der Minimap hervorgehoben werden.
- default.html: Beim der Switch-Checkbox
role="switch"
ergänzt. - basics.css: Die Hilfsformatierungen für den Akkordeon-Container im Editor
.editor .accordion
wurden fix integriert, damit die jeweils nicht vergessen gehen.
- application.css: Form-Wizzard neu ohne
.btn + .btn
– Abstände werden nun über diegap
Eigenschaft gelöst.
- basics.css / application.css: CSS logical properties bei
float
’s ergänzt. Wegen durchwachsenem Browsersupport wurden die physischen Werte aber ebenfalls noch belassen. Entsprechende Klassen wurden wo sinnvoll ebenfalls ergänzt.
.alignleft, .align-inline-start {
float: left;
float: inline-start; /* not best support yet */
margin-block-start: 0;
margin-inline-start: 0;
}
- basics.css / layout.css / application.css / responsive-css: Umstellung auf CSS logical properties. Es gibt noch einige Stellen (zb. Icon-Ausrichtungen), die zu bereinigen sind.
- screen.css: FontAwesome Update auf 6.5.1
- basics.css / application.css: Global wurden alle Schriftgrössen durch Variablen nach dem Schema
--fontsize-400
ersetzt. - basics.css / application.css: Für Farbdefinitionen wurden ebenfalls Variablen ergänzt. Kundenspezifische CD-Farben werden nach dem Schema
--clr-primary
,--clr-secondary
… ergänzt. Abstufungen davon können mit den Suffixes-dark
und-bright
ergänzt werden, also--clr-secondary-dark
.
Weiss--clr-neutral-100
und Schwarz--clr-neutral-900
sind dabei die Fixwerte einer neutralen Skala. Abstufungen dazwischen werden je nach Bedarf ergänzt. An vielen Orten sind nach wie vor noch Inline-Farbwerte definiert, die vorerst noch so bleiben. Ersetzt wurden lediglich die reinen schwarz/weiss-Werte. - basics.css: Eine
accent-color
wurde definiert. Im Standard ist dies die Primärfarbe--clr-primary
. - basics.css: Für Border-Radius gibt es ebenfalls eine Variable
--radius-sm
(derzeit Buttons, Form-Inputs). - application.css: Lokal gescopte Component-Variablen haben nun konsequent einen Underscore vorangestellt; zb.
--_toggle-width: 3.5em;
. - basics.css: Der Standard-Fontstack basiert nun auf Systemschriften:
body {
font: var(--fontsize-400)/1.5 system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}
- application.css: Farbkontraste von Form-Fehlermeldungen verbessert zusammen mit den Form-Hints zur einfacheren Anpassung in Variablen ausgelagert.
- application.css: Styling von des Upload-Panels
.form-builder .js-simple-uploader-dropzone
ergänzt.
- application.css: Webkit-Prefixes von
position: -webkit-sticky;
entfernt.
- basics.css: Abstand
details
/summary
gefixt. FB-Icon mit den anderen Social-Media-Icons harmonisiert (Square-Icon).table.grid
ist neu.tbl-grid
um Einflüsse der Grid-Layoutklasse zu verhindern. Weitere kleine Bugfixes. - application.css: Tabelle der Vereinsliste nach Kategorien bekommen Spaltenbreiten, um sie untereinander auszurichten, wenn genügend Platz da ist.
- basics.css:
details
/summary
Fallback für IE11/Edge ≤ 18 entfernt.
- application.css: eGov-Personenlisten mit A–Z-Index bekommen nun einheitliche Spaltenbreiten über die einzelnen Tabellen hinweg.
.mod-egov-contact .mod-index-box th:is(.contact-name, .contact-department, .contact-contact) {
width: 33.333333333333333%;
}
- default.html: Update auf jQuery 3.7.1,
.row
auf.grid
umgestellt. - basics.css: Die Spalten-Grundlagen von Float- auf Grid-Layout umgestellt. Die
.row
Klasse wird nun durch.grid
abgelöst. Variablen Spaltenanzahl und Spaltenabstand für flexibleren Einsatz eingeführt.
- application.css: Webkit-Prefixes bei Animationen entfernt.
- default.html: Details/Summary mit zusätzlichem Inhalts-Container
.details-content
gemäss Comet.
- default.html: Update auf jQuery 3.7.0
- basics.css: Weniger Code und Spezifität durch Zusammenfassungen mit
:is()
-Selektoren, besonders bei Tabellen. - application.css: Spalten-Verhalten der Magnific-Gallery mit Variabel
--_column-count
steuern.
- basics.css: Im
prefers-reduced-motion
wurde die Eigenschaftview-transition-name
der neuen View Transitions API ergänzt. - basics.css: iFrames bekommen standardmässig ein
aspect-ratio: 16 / 9;
. Bei Google-Maps-URL’s von1 / 1
. Zusätzliche URL’s und Seitenverhältnisse können ergänzt werden – auch via Inline-CSS. Beispielsweisestyle="--aspect-ratio: 3 / 2"
. Damit ist der Container.media-responsive
nicht mehr zwingend nötig für das korrekte Resize der iFrames, wird aber vorläufig noch im Framework belassen.
- basics.css: Diverse Blockelemente wie Bilder, Boxen, Deails/Summary, Videos, Tabellen oder Zitatblöcke bekommen nun die doppelten vertikalen Abstände, damit auch der Inhalt dem Weissraumbedarf moderner Layouts gerechter wird. Hier sind sicher noch weitere Anpassungen – insbesondere für Ausnahmen – nötig.
- basics.css: Für alle Überschriften wurde
text-wrap: balance;
integriert.
- basics.css: Der Container
.media-responsive
für das iFrame-Resizing wird künftig entfernt, wenn sich dieaspect-ratio
-Lösung bewährt.
- application.css: Float-Layout aus der Magnific-Gallery entfernt. Diese basiert damit nun ausschliesslich auf CSS-Grid.
- default.html: Update jQuery auf 3.6.4.
- screen.css: Update FontAwesome Subset auf 6.4.0.
- basics.css: Fokus-Klassen von Buttons haben nun keine eigene Hintergrundfarbe mehr, sondern dunklen die bestehende Buttonfarbe um 20% ab.
- application.css:
.mod-nav
ist neu ein Flex-Objekt, wodurch alte Deklarationen entfernt werden konnten.
- basics.css: Select-Menü-Texte wurden in iOS mit der Systemfarbe eingefärbt. Das wird nun mit
color: inherit;
verhindert. - application.css: Code-Cleanup bei den Switch-Button-Icons, zusätzliche Custom Properties für Icon-Stärke und Border-Radius.
- default.html: Checkbox-Switch-Button musste wegen Mobile-Problemen in einen zusätzlichen Container verschoben werden. In diesem Zuge wurden zusätzliche Elemente ergänze, die für bessere visuelle Accessibility sorgen, indem sie dem Button neben dem Farbwechsel auch entsprechende Icons zuweisen.
- application.css: Das Styling der oben genannten Switch-Button-Icons wurde ergänzt. Zudem ist der Switch mit Custom-Properties nun einfacher anpassbar.
- application.css: Formular-Buttons in der Gruppe
.form-builder-btn-group
werden nun via Flex gelayoutet.
- basics.css: Die graue Standardfarbe von Reset- oder Secondary-Buttons erreicht nun das vorgeschriebene Kontrastverhältnis von > 1:4.5.
- default.html: Listen, auf denen
.reset
und damit auchlist-style: none
angewendet wird, werden mit VoiceOver in Safari nicht mehr als solche vorgelesen Quelle. Dem soll das ARIA-Attributrole="list"
auf entsprechenden Listenobjekten – primär in Navigationen – entgegenwirken. In den aktuellen Handelbars-Files für Navigationen (menu.hbs und menu_entire_ajax.hbs) wurde das ergänzt.
- basics.css / print.css: Schreibfehler beim generischer Font
monospace
korrigiert und entsprechende Klasse.monospace
ergänzt. - application.css: Abstand oberhalb des optionalen
.mod-entry-desc
ergänzt und beim.mod-title
entfernt. - application.css: Z-Index
.cookie-alert
erhöht.
- basics.css: Durch das Ergänzen von
role="list"
kann auf den unschönen, in 1.8.1 eingeführten CSS-Workaround verzichtet werden.
- basics.ss: Deklaration für fette Texte ergänzt. Damit können auch die in Safari vielfach problematischen Fettschriften einfacher auf alternative Schnitte umgestellt werden.
strong, b,
.strong, .lead {
font-weight: bold;
}
- print.css: Pageturner
.mod-pageturner
wird beim Druck ausgeblendet. - application.css: Darstellung FE-Editor gefixt, der nicht mehr die ganze Breite ausgenutzt hatte bei einem umgebenden
display: flex
.
- screen.css: FontAwesome aktualisiert auf 6.2.0.
- application.css: Verbesserung in der Darstellung der Matrix im Form-Builder.
- default.html: jQuery aktualisiert auf 3.6.1.
- application.css: Klasse
.btn-group-grid
für Button-Gruppen erstellt, die Button-Childelements nebeneinander anordnet und der Abstand regelt.
- basics.css: Icon-Support für geschützte Dateien integriert
- application.css: Für die Crawler-Suchresultate wurden Styles ergänzt, die primär die Dokumente-Resultate besser darstellen.
- basics.css: Fehler korrigiert, der das ausgeblendete, zumeist leere Element
.box
(zb. für Eingabe-Feedback im Einsatz) durchdisplay: flow-root;
standardmässig wieder eingeblendet hatte. Dies sollte nun nur noch passieren, wenn die Boxen nicht leer und nicht ausgeblendet sind:
details:not(:empty):not([hidden]),
.box:not(:empty):not([hidden]) {
display: flow-root;
}
- default.hml: Input
[type=range]
ergänzt im Musterformular. Checkbox-Toggle (Switch-Button) ergänzt. - application.css/basics.css: Form-Builder: Fix für Anzeige der Passwortstärke nachgetragen.
- application.css: Form-Builder: Checkbox-Toggle (Switch-Button) ergänzt.
- application.css: Form-Builder: Fix für Anzeige der Passwortstärke nachgetragen.
- application.css: Form-Builder: Clearfix-Alternative
.form-builder__item
ergänzt. - application.css: Input
[type=range]
vertikal zentriert.
- application.css: Form-Builder: Fix für
form-builder-container
(Editorinhalte): Clearfix muss weiterhin funktionieren, kein Flex-Layout.
- print.css: Diverse kleine Verbesserungen in der Printdarstellung.
- basics.css: Input
[type=range]
aufgenommen. - application.css: Input
[type=range]
und Basisformatierungen für das FAQ-Modul aufgenommen.
- application.css: Form-Builder: Layout basiert neu auf Flex anstatt Floats.
- print.css: Seitengrösse in der
@page
-Regel ergänzt, Verbesserungen für Bildergalerien und Cookie-Law.
- custom.js: Tab in Mobile-Nav berücksichtigt nun alle fokussierbaren Elemente
- application.css: Dropdown-Komponente kompatibel mit FA6 gemacht, wo Inline-SVG’s anstatt die
.fa
-Klassen verwendet werden.
default.html: SVG-Favicon aufgenommen.
- basics.css: Kleine Schriftgrösse angepasst, damit der Unterschied deutlicher ist zu normalem Grundtext.
- responsive.css: Legenden von zentriert ausgerichteter Bilder waren bei kleinen Viewports nur sehr schmal, da die nötigen Angaben auf den umgebenden
div
anstatt dasfigure
-Element angewendet wurden.
.aligncenter > figure {
display: table;
width: auto;
}
- basics.css: Listen-Einträge bekommen etwas Zusatzabstand
- print.css: Listen-Einträge bekommen etwas Zusatzabstand
- basics.css: Legenden erben ihre Farbe.
- default.html: Neues FontAwesome 6-Kit-JS ergänzt
- screen.css: FontAwesome 5-Subset ergänzt
- screen.css: FontAwesome 4.7 entfernt
- basics.css: Für die Umstellung auf FontAwesome 6 stehen neu Font-Subsets für die bestehenden Icons bereit, die in CSS via Pseudo-Element und Webfont eingefügt werden. Die Subsets enthalten nur noch die wichtigsten Basic-Icons. Andere Layout-Icons sollten künftig via FontAwesome 6-Kit geladen werden. Da wir von FA4.7 updaten, haben die Unicodes einiger Icons geändert.
- basics.css: Kleine Verbesserungen für einfacheres Überschreiben von Custom-Outline-Styles.
- basics.css: Vorbereitung für neue FontAwesome-Iconsfonts für Links.
- application.css: Nummern-Inputfeld «Nice Number» mit Grundstyling versehen.
- application.css: Breite von Radios und Checkboxen in Kampagnen-Anmeldungen gefixt.
- basics.css: Den vielfach störenden, sichtbaren Fokus bei
summary
entfernt, wenn es nicht per Tastatur bedient wird.
summary:focus:not(:focus-visible) {
outline: none;
box-shadow: none;
}
- basics.css: Akkordeons mit gefloateten Elementen (zB. Bilder) konnten im Frontend und Backend Probleme machen. Entsprechende Clearfixes wurden ergänzt.
.js-accordion-content::after {
content: "";
display: table;
clear: both;
}
.editor .accordion > *:is(h2, h3, h4, h5, h6) {
clear: both;
}
- application.css: Akkordeon-Handle etwas vereinfacht: Standard-Icon ist nun das «Angle-Up», das in offenem Zustand nun gespiegelt anstatt ersetzt wird.
- application.css: CSS-Grundstyling für die barrierefreie Dropdown-Komponente ergänzt.
- basics.css:
scroll-snap-margin-top: 2ex;
(Safari < 14.1) entfernt.
- basics.css:
.visuallyhidden
neu mit transparentem Hintergrund um in Firefox einen weissen Pixel auf farbigem Grund zu verhindern.
- basics.css: Attribut-Selektoren für Icon-Links angepasst, damit sie mit den neuen URL-Parametern aus Comet zurechtkommen. Neu sind sie zudem case insensitiv und unterstützen damit IE11 nicht mehr.
- basics.css:
.link-expanded
hinter die Icon-Links verschoben, damit diese das Pseudo-Element nicht reseten bei internen Links.
- application.css: Form-Fix für Mobile-Grössen.
- basics.css: Neue Klasse
.crisp
ergänzt, um die Bildglättung des Browsers gezielt zu deaktivieren (beispielsweise bei QR-Codes).
.crisp {
image-rendering: crisp-edges;
image-rendering: pixelated;
}
- application.css: Breadcrumb-Trenner mit
position: static
versehen, damit der A11Y-Listen-Fix (1.8.1) deren Positionierung nicht mehr beeinflusst.
- custom.js: Ergänzung in der Mobilenav, dass man mit Shift-Tab beim fokussierten Button, bei geöffnetem Menu, auf den letzten Menueintrag springt
- custom.js: Veraltete Funktion
keyCode
mitkey
ersetzt. - custom.js: Abfrage, dass Shift nicht gedrückt wird, bei dem normalen Tab-Listener ergänzt
- default.html: Inaktive Form-Inputs (
disabled
) ergänzt. - default.html: Der globale
.wrapper
um die ganze Seite wurde entfernt. Stattdessen befinden sich neue.wrapper
-Elemente innerhalb jedes Hauptelements, damit die meist üblichen Hintergrundfarben die Viewportbreite ohne Umbau füllen können. - default.html: Bei Bildern wurden die Attribute
width
undheight
ergänzt. - basics.css: Die Inputs für Checkboxen und Radios können in modernen Browsern nativ gestylt werden. Entsprechendes CSS wurde ergänzt. Diese Typen können damit nun wie die anderen Inputs bei Bedarf farblich angepasst werden. Zudem haben damit nun auch alle Form-Inputs einen konsistenten
:focus
-Style. Weiterführende Infos. Für Edge Legacy musste ein Reset als Fallback eingebaut werden. - basics.css: Die Kontraste der Input-Rahmen wurden erhöht, um dem Mindeskontrastverhältnis von 4.5:1 zu entsprechen.
- basics.css: Die Spaltenbreiten der
.col-
Klassen wurden auf eine Gesamtbreite von 1410 Pixel angepasst, was in vielen Fällen dann bereits stimmt. - application.css: Anpassungen für das native Styling von Checkboxen und Radios.
- layout.css: Alle Elemente werden konsistent nur noch via Klassen angesprochen.
- layout.css: Floats entfernt und durch Flexbox ersetzt.
- layout.css:
.wrapper
-Breite auf 1410 Pixel erhöht. - responsive.css: Resets für Floats entfernt.
- application.css: Neue Regel erzwingt den Umbruch von indexierten PDF-Inhalten ohne Wortabstände auf der Suchresultatseite.
.search-result-desc {
overflow-wrap: break-word; /* umbricht auch PDF-Inhalte */
}
- basics.css: Klassen für die File-Upload-Hints
.form-hint-complex
in Formularen ergänzt - application.css: Klassen für die File-Upload-Hints
.form-hint-complex
in Formularen ergänzt
- application.css: Styles für die Accessible-Date-Komponente ergänzt.
- basics.css: Lange Select-Beschriftungen werden nun standardmässig gekürzt mit
text-overflow: ellipsis;
. Dies war insbesondere bei der Accessible-Date-Komponente nötig, wo Tag, Monat und Jahr jeweils eigene Selects nebeneinander bekommen. - default.html: Klassen für Navigations-Level
.level-x
ergänzt.
- custom.js: Initialisierung
responsiveTable
ergänzt. - basics.css: Custom Properties für «natürlichere» Box-Shadows in verschiedenen Grössen ergänzt.
- application.css:
.flex-search
mitselect
ergänzt (z.B. für Rubrikenauswahl im OS), Resizing des.flex-search button
auf Mobile verhindert.
- default.html:
.table-responsive
entfernt (wird neu per JS gesetzt).
- print.css: Ausgerichtete Bilder in generierten PDF’s verstehen
max-width
nicht. Darum bekommen diese Bilder nun zusätzlich einewidth
.
.cms-print-pdf .alignleft,
.cms-print-pdf .aligncenter,
.cms-print-pdf .alignright {
width: 33%; /* PDF max-width-bug */
}
- jQuery auf 3.6.0 aktualisiert
- application.css: Basic-Styles für den Online-Schalter Checkout ergänzt.
- basics.css:
details
undsummary
vereinfacht. - default.html: Alt-Text bei Bildern ergänzt (ergab beim verlinkten Bild neu einen Abzug im aktualisierten Lighthouse-Score).
- basics.css: Potenziell anspringbaren Elementen – daher alle Elemente mit ID’s – wird nun ein genereller
scroll-margin-top
-Wert mitgegeben. Der verhindert, dass ein angesprungenes Element direkt am Viewport-Rand zu stehen kommt und bei Elementen diesticky
oderfixed
sind, kann der Wert entsprechend erhöht werden. Quelle.
[id] {
scroll-snap-margin-top: 2ex;
scroll-margin-top: 2ex;
}
- basics.css: Utility-Klassen, die mit Links in Verbindung stehen werden neu direkt nach den Links aufgeführt.
- basics.css: kleinere Optimierungen
details
/.box
:clear
ergänzt.link-expanded
:z-index
ergänzt.tag
ergänzt bei kleinen Schriftgrössen
- application.css: kleinere Optimierungen
- Basis für
.tags
ergänzt - Basis für
.cards
(Layout) und.cards
(Content) ergänzt
- Basis für
- basics.css:
details
undsummary
Erweiterungen:- sind nun mit einem Custom-Pfeil gestylt und
summary
ist ganzflächig klickbar. Weil diese Elemente IE11 und Edge ≤18 noch nicht bekannt sind, wurden diese Anweisungen in eine entsprechende Support-Mediaquery gestellt. In den Legacy Browsern erscheint dasdetails
Element damit einfach offen, wie eine Element.box
. - Die Modifier-Klassen für Boxen lassen sich nun bei Bedarf ebenfalls auf das
details
-Element anwenden. - Das
:focus
-Handling vonsummary
wurde dem der Form-Elemente angeglichen. - Ein bekanntest Problem ist noch die fehlerhafte Darstellung des Custom-Pfeils in Safari. Hier muss noch eine Lösung – wahrscheinlich via JS – gefunden werden.
- sind nun mit einem Custom-Pfeil gestylt und
- print.css: Grosse Bilder wurden in PDF’s nicht verkleinert, da
max-width
scheinbar ignoriert wird. Eine Breitenangabe soll nun zumindest die Skalierung des Bildes auf Layoutbreite erzwingen.
.cms-print-pdf img {
width: 100%;
}
- default.html: Modernizr wird standardmässig nicht mehr eingebunden. Die noch genutzten Abfragen (primär für die Input-Attribute) sind nun im
helper.js
integriert. Falls weitere Features abgefragt werden sollen, kann Modernizr projektspezifisch ergänzt werden.
- application.css: Bildergalerien erhalten ein Grid-Progressive enhancement, womit sich Galerien mit verschieden grossen Bildern besser steuern lassen. Noch im Detail zu testen.
- custom.js: Einige Teile wurden ins den globale helper.js ausgelagert:
- toggleAriaExpanded-Funktion
- TochDevice-Abfrage
- Role
presentation
für Tabellen mit gleichnamiger Klasse - Submit-Methode von Suchen
- basics.css: Bei einigen Tabellen-Formatierungen werden die
.calendar
Tabellen ausgeschlossen um fehlende Linien und falsch formatierteth
zu verhindern. - basics.css: Formular-Anpassungen
textarea
Elemente haben eine Mindesthöhe, da dasrow
Attribut meist nicht gesetzt wird.- Date-Inputs in Mobile Safari haben eine Mindesthöhe, da sie ohne Inhalt zusammengestaucht werden.
- Dropdown-Icon bei
select
gefixt, das in IE11 ohne Breitenangabe verzogen wurde.
::-webkit-date-and-time-value {
min-height: 1.25em;
}
- basics.css: Der mit 1.8 eingeführte Listen-Fix beansprucht mit dem Pseudo-Zeichen (zero-width space) in den Skiplinks, aber auch mit Block-Links zusätzliche Höhe. Er muss darum zusätzlich absolut positioniert werden. Diese Lösung ist in der Praxis weiter zu beobachten.
Alternativ kann das VoiceOver-Problem bei Listen mitlist-style-type: none;
auch direkt im HTML gefixt werden viarole="list"
auf dem Listen-Element. Quelle: Fixing Lists
nav li::before {
content: "\200B"; /* fixes VoiceOver Issue */
position: absolute;
}
- basics.css: Fixt einen VoiceOver-Bug, der verhindert, dass Listen mit deaktivierten Listenpunkten
list-style-type: none;
als Listen vorgelesen werden. Quelle: Accessibility issues when removing list markers
nav li::before {
content: "\200B"; /* fixes VoiceOver Issue */
}
- application.css:
.hamburger
neu mitdisplay: block;
.
- basics.css: In Browsern, welche die neue Pseudo-Klasse
:focus-visible
verstehen, wird bei Mouse-Eingaben die Outline standardmässig entfernt. Mehr Infos.
:focus:not(:focus-visible) {
outline: none;
}
- basics.css: Grundstyles für Inputs mit den Attributen
disabled
undreadonly
ergänzt.
- application.css: Form-Builder-Grundstyle für Inputs mit dem Attribut
disabled
entfernt, da es neu – weniger spezifisch – im basics.css abgedeckt ist.
- basics.css: Letztes Element in Tabellenzellen hat keinen Margin.
…
th > *:last-child, td > *:last-child
… {
margin-bottom: 0;
}
- application.css: Reservations-Kalender neu mit optionaler
.cal-available
Klasse, falls nur die Zustände «ausgebucht» und «verfügbar» unterscheiden werden.
Breadcrumb-Trenner nun im Standard verfügbar, ebenso wie Basic-Styles für das Breadcrumb-Dropdown-Menü, wie es der Kanton Glarus einsetzt.
- application.css: Kontrast der
.mod-entry-meta
Farbe hat nun den nötigen Mindestkontrast auf weissem Hintergrund.
Der Kalender bekommt bei Viewports unter 37.5em (600px) nun 100% Breite (diese Anweisung kam bis anhin noch aus dem Handlebars-CSS).
Der Breadcrumb-Liste funktioniert neu mit Flex, was einige Folgedeklarationen auf den Listenelementen erspart.
- basics.css: Bei Form-Elementen, wo wir den Outline-Focus durch einen
box-shadow
ersetzen, ist die Outline neu transparent definiert. So wird sichergestellt, dass die Outline im Windows High Contrast Mode dargestellt wird.
…
[type="submit"]:focus {
outline: 3px solid transparent;
border-color: #0074a9;
box-shadow: 0 0 0 5px rgba(21, 156, 228, 0.4);
}
- default.html: Die Grundtabelle enthält realistischere Daten, damit auch das vertikale Scrollen besser getestet werden kann.
Diescope
Attribute und dastfoot
Element wurden ergänzt.
Doppelpunkte bei den Form-Labels entfernt, damit es der Darstellung des Comet-Updates 1.8.7 entspricht. - basics.css: Spaces durchgängig durch Tabs ersetzt.
In Tabellen werden die möglichen Kombinationen aus vertikalen und/oder horizontalen Headern sowiethead
,tbody
undtfoot
besser abgedeckt.
Neu steht die Tabellen-Klassetable.no-pad
zur Verfügung, die Paddings in der ersten und letzten Spalte entfernt.
Die Zeilen-Hintergrundfarben der.zebra
und.hover
Klassen sind neu RGBA-Werte, so dass sie besser mit verschiedenen Hintergrundfarben klarkommen. - application.css: Spaces durchgängig durch Tabs ersetzt.
-webkit
Prefixes beitransform
ausgemustert.
- Die Table
.vertical
Klasse konnte entfernt werden; das wird nun durch den Tabellenaufbau selber abgedeckt.
- default.html: Die Mobile-Navigation samt Hamburger ist nun im Template integriert. Ergänzend muss nun auch das entsprechende JavaScript und jQuery geladen werden.
- application.css: Der
.hamburger
wurde fix aufgenommen. - application.css: Eine Media-Query für das grundlegende Ein-/Ausblenden der Elemente
.mainnav
und.mobilenav
wurde ergänzt und muss pro Website dann entsprechend angepasst werden. - custom.js: Die Mobile-Nav-Funktionalität wurde integriert.
- application.css: Die
.mobilenav
wird nun nicht mehr direkt gestylt, sondern ein.mobilenav__container
darin. Damit muss die Mobile-Nav nicht mehr ausgeblendet werden, was erlaubt den Hamburger-Button auch innerhalb der Navigation.mobilenav
zu verwenden, wie es für die bessere Accessibility empfohlen wird. Auch eine Media-Query für das grundlegende Ein-/Ausblenden der Elemente.mainnav
und.mobilenav
wurde ergänzt und muss pro Website dann entsprechend angepasst werden.
- basics.css: Die in 1.6.9 ergänzten Scrollbar-Erweiterungen in einen eigenen Abschnitt überführt, wo auch weitere Elemente, die sichtbare Scollbars haben sollen ergänzt werden können. Eine entsprechende Helper-Class
.visible-scrollbar
wurde auch eingeführt.
/*=scrollbars
-------------------------------------- */
pre,
.table-responsive, .visible-scrollbar {
overflow: auto;
-webkit-overflow-scrolling: touch;
}
- application.css: Die Klasse
.error
im Formbuilder wurde entfernt. Einerseits hatte sie an der Stelle einen anderen Scope und mit den jüngsten Anpassungen wurde damit alles rot eingefärbt, nicht nur die Fehlermeldung selber. Neu darum nur noch:
.form-builder input.error,
.form-builder label.error {
color: red;
}
- basics.css: Mangels Mobilebrowser-Kompatibilität und Problemen mit den
.zebra
und.hover
Klassen die Schatten (v 1.3.4) von Tabellen mit Overflow entfernt und stattdessen mit gestylten Scrollbars versehen, die beim Mac auch angezeigt werden, wenn man die Scrollbar-Anzeige auf «beim Scrollen» beschränkt hat.
- basics.css: Neuer Helper um Links um ihre Elternelemente aufzuspannen.
.link-expanded {
position: relative;
}
.link-expanded a::after {
content: "";
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
}
- application.css: Styles für das Mobile-AJAX-Menü übernommen aus den Handlebars-Templates, damit der Rest vom Master kommen kann.
- application.css: Abstand-Reset bei aufeinanderfolgenden
label.error
Elementen.
- basics.css:
fieldset
neu mit.reset
. - basics.css:
fieldset
neu mitmin-width: 0;
. Stellt sicher, dass der Overflow bei zu breiten Inhalten funktioniert. - application.css: Im
.form-builder
Klassen fürlegend
ergänzt, die es erlauben Radio- oder Checkboxlisten nun wie für die Accessibility empfohlen in einemfieldset
zu gruppieren.
- basics.css: Farbkontraste der
.box
-Modifier wurden leicht erhöht, damit diese mindestens ein Kontrastverhältnis von 1:4.5 aufweisen (WCAG Level AA). - basics.css: Auf Bildern wurde
display: block;
entfernt und stattdessenvertical-align: middle;
ergänzt, das in den meisten Fällen den gleichen optischen Effekt hat und den Unterlängen-Abstand unten entfernt.
- default.html: Verknüpfungen der HTML-Grundstruktur mit Ihren zugehörigen Titeln von
aria-describedby
durcharia-labelledby
ersetzt. Das validiert nun auch im Total Validator-Test.
- application.css: Die Styles aus den AJAX-Menüs sind nun nicht mehr im Theme-Ordner abgelegt, sondern nun fix im Applikations-CSS. Damit sollte das Kopieren des Template-Ordners nicht mehr nötig sein.
- custom.js: Bild/Link-Selektor angepasst, der Bilder in der Galerie wegen eines anderen HTML-Aufbaus nicht berücksichtigt hatte.
- basics.css: Helferklasse
.reverse
ergänzt, die die Reihenfolge von gewissen Elementen visuell umkehrt, damit beispielsweise Titel auch mit vorangestelltem Daum an erster Stelle stehen können.
- custom.js: Änderung der Formular-Methode bei Suchformularen
form.js-mod-search
in alten IE‘s, um sicherzustellen, dass die Zurück-Navigation funktioniert. - basics.css: Eine Helferklasse
.block
ergänzt, um Inline-Elemente bei Bedarf auf Block umzustellen.
- basics.css: Standardformatierungen für
audio
undvideo
Elemente.
- basics.css: Spezifität bei den Link-Selektoren reduziert.
- package.json / gulpfile.js: Aktualisiert auf Gulp 4 um Node 12-Kompatibilität wieder herzustellen.
- layout.css:
outline
ersetztborder
, damit es keinen Einfluss auf das Layout haben kann.
- application.css: Basic-Styling für KataBox ergänzt.
- default.html: Bei den Tabellen-Containern
.table-responsive
nochrole="region"
undtabindex="0"
nachgerüstet, dass die Tabellen auch mit der Tastatur zugänglicher und scrollbar macht. Keyboard-Friendly Scroll. - basics.css: iFrames haben nun den üblichen vertikalen Abstand von Blockelementen.
- application.css: Im Form-Builder-Part Klassen für die Anzeige von Passwortstärken ergänzt.
- application.css: Legacy Flex-Prefixes entfernt.
- basics.css: Einheitlicheres Basic-Styling von Forms mit besser sichtbarem
:focus
, der gleichzeitig weniger Spezifität hat und neu berücksichtigtemselect
Element. - print.css: Codeblöcke erhalten einen Monospace-Font.
- default.html:
details
/summary
Element ergänzt im Inhalt. - basics.css: Basic-Styling für
details
/summary
Elemente ergänzt.
<details>
<summary>Risus Fermentum Mollis Nibh.</summary>
<p>Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.</p>
</details>
- basics.css: (noch) leere Selektoren kompakt auf eine Zeile genommen
- basics.css:
prefers-reduced-motion
greift nun auch bei Pseudo-Elementen.
- application.css: Farbkonstrast der Form-Hints erhöht, so dass auch der Standardwert einen A11Y-Check besteht.
- basics.css: Bei Input-Elementen die Browser
appearance
zurückgesetzt, um insbesondere in Mobil-Browsern ein konsistenteres Erscheinungsbild zu haben.
…
[type=week],
textarea {
-moz-appearance: none;
-webkit-appearance: none;
appearance: none;
…
}
- application.css: Mehrspaltigen Kalender-Legende optimiert, damit die Einträge auch bei unregelmässiger Anzahl auf der gleichen Baseline dargestellt werden.
.mod-wrapper
Abstand wird nun wie die anderen Grundabstände imbasics.css
geregelt.
- basics.css: Falls das
scroll-behavior: smooth;
aktiviert wurde, wird dieses nun ebenfalls inprefers-reduced-motion
deaktiviert.
/* =animations
--------------------------------------------------------------- */
@media screen and (prefers-reduced-motion: reduce), (update: slow) {
* {
…
scroll-behavior: auto !important;
}
}
- basics.css: FontAwesome-File-Icons wurden bei backslash-Domains versehentlich zurückgesetzt.
a[href*=".backslash.ch"]::before
- print.css: Basis-Styling für die Print-Fussnoten ergänzt.
- basics.css: Animationen können mit der
prefers-reduced-motion
Media Query nun deaktiviert werden. Quelle.
/* =animations
--------------------------------------------------------------- */
@media screen and (prefers-reduced-motion: reduce), (update: slow) {
* {
animation-duration: 0.001ms !important;
animation-iteration-count: 1 !important;
transition-duration: 0.001ms !important;
}
}
- application.css: Kleine Fehlerkorrektur
- basics.css: Margins beim
hr
eingefügt
- print.css:
type="hidden"
wird neu ausgeblendet, als Workaround für einen Bug, der in PDF-Ausgabe das Generieren des Outputs bei Seiten mit Hidden-Inputfeldern verhinderte.
[type="hidden"] {
visibility: hidden; /* used for PDF-print */
}
- basics.css: Bildergalerien-Links ohne Bild-Dateiicon.
…
.mod-dam--gallery a::before {
content: none;
padding: 0;
}
- basics.css: Webkit-Prefix für die
clip-path
-Eigenschaft.visuallyhidden
ergänzt.
- default.html:
tabindex="-1"
vommain
Element entfernt. Dies wurde in einigen Browsern benötigt, damit der Inhalt bei Skiplinks einen Fokus bekommen konnte und wird laut knowbility.org nicht mehr benötigt. - basics.css: Aus dem gleichen Grund konnte der zugehörige CSS-Part entfernt werden:
#main:focus {
outline: none; /* entfernt :focus des Skiplinks */
}
- print.css: Links sind nun auch schwarz.
figure
-Elemente vom Seitenumbruch ausgeschlossen.
- default.html: Code für Schema.org-Logo ergänzt.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"url": "http://www.example.com",
"logo": "http://www.example.com/images/logo.png"
}
</script>
Hier kann üblicherweise das bestehende Touch-Icon eingebunden werden, sofern es dem Logo entspricht und folgenden Vorgaben einhält:
- Das Bild muss mindestens 112 × 112 Pixel groß sein.
- Die Bild-URL muss gecrawlt und indexiert werden können.
- Das Bild muss im Format JPG, PNG oder GIF vorliegen.
- basics.css: Skiplinks mit
z-index: 10
versehen, Helferklassen.zebra
und.hover
sprechen nur noch direkte Kind-Elemente an. - print.css: geschlossene Akkordeons werden beim Print geöffnet
- basics.css: Helferklassen
.zebra
und.hover
sprechen nur noch direkte Kind-Elemente an.
- basics.css: Google-Maps-Short-URL (https://goo.gl/maps/) bei den FontAwesome-Icons ergänzt.
- Cleanup
- basics.css: Bei visuell versteckten Elementen
clip: rect(0 0 0 0);
entfernt, das bei aktuellen Google Audits als A11Y-Fehler deklariert wird. Dieses wurde sowieso nur noch von IE 6/7 genutzt.
- Cleanup
- Struktur: pictures-Folder in img umbenannt
- default.html: Bild-Pfade angepasst
- basics.css: Root-Element für Custom-Properties ergänzt
- basics.css: HTML-Schriftgrösse deklariert für einfache Definitionen in
rem
-Einheiten und IE < 11-Fallback.
:root {
}
html {
font-size: 62.5%; /* 10/16 */
}
body {
font-size: 16px; /* IE < 11 fallback */
font: 1.6rem/1.5 Helvetica, Arial, Geneva, sans-serif;
}
- print.css: Elemente, die nicht gedruckt werden sollten, sind nun zusammengefasst.
- basics.css: Der Wrapper
.table-responsive
bekommt nun – sobald er überfliessenden Inhalt hat – links und/oder rechts einen Schatten.
.table-responsive {
overflow-x: auto;
overflow-y: hidden;
width: 100%;
max-width: 100%;
background:
linear-gradient(to right, #9f9 30%, rgba(255,255,255,0)), /* needs matching background-color */
linear-gradient(to right, rgba(255,255,255,0), #9f9 70%) 0 100%, /* needs matching background-color */
radial-gradient(farthest-side at 0% 50%, rgba(0,0,0,.2), rgba(0,0,0,0)),
radial-gradient(farthest-side at 100% 50%, rgba(0,0,0,.2), rgba(0,0,0,0)) 0 100%;
background-repeat: no-repeat;
background-color: #9f9; /* needs matching background-color */
background-size: 40px 100%, 40px 100%, 14px 100%, 14px 100%;
background-position: 0 0, 100%, 0 0, 100%;
background-attachment: local, local, scroll, scroll;
-webkit-overflow-scrolling: touch;
}
- basics.css / print.css: Falsches Komma gefixt
- basics.css / print.css: Neue Helferklassen zum Ein-/Ausblenden von Elementen auf dem Medium Screen oder Print.
[hidden],
.none, .screenhidden, .printvisible {
display: none;
}
.screenvisible, .printhidden, {
display: block;
}
Accessibility-Verbesserungen:
- default.html: Bessere Überschriftenstruktur, neue Skiplinks
- entsprechende CSS-Anpassungen
- Platzhalter-File für touch-icon.png (anstatt 404)
- normalize.css: Update auf 8.0.1.
- application.css: Neuen Reservations-Tageszustand «letzte Karte(n)»
.cal-almostsoldout
ergänzt.
- application.css: Styles für Multistep-Forms ergänzt.
- application.css: Basis-Styling für Breadcrumb-Pfade nach BEM ergänzt. Primär für Mobilgeräte mit Overflow.
- Global die Einzüge bei allen CSS-Files harmonisiert.
- application.css: Radios bei der Kreditkartenauswahl werden nicht mehr vertikal aus dem Viewport geschoben, da Browser sonst den Viewport verschieben.
- mail.css: Hintergrundfarbe für Tabellenzeilen, die den Form-Legenden entsprechen ergänzt.
- basics.css: HR-Element mit
clear: both
ergänzt. - mail.css: Fixes, damit Tabellen-Zeilen in Outlook Win kleinere/gleiche Abstände wie in anderen Mail-Clients haben.
- default.html: Suche dem Handlebars-Template angeglichen.
<form class="search-form" role="search" method="post" action="#" >
<label class="invis" for="search-input">Suche</label>
<input type="search" id="search-input" placeholder="Suchbegriff" required />
<button type="submit">suchen</button>
</form>
- application.css: Styles für Form-Builder Multisteps ergänzt
/* =form-builder multistep
--------------------------------------------------------------- */
.form-to-wizard-commands .btn + .btn {
margin-left: 1.5em;
}
- basics.css: Zeilenabstand bei Buttons gefixt.
.btn, .btn:link, .btn:visited {
line-height: inherit;
}
- default.html: IE Conditional Comments und HTML5-Shiv entfernt.
<!--[if lt IE 9]>
<link href="css/ie.css" rel="stylesheet" type="text/css" media="screen">
<script src="https://ext.cdn-backslash.ch/lib/html5shiv/latest/html5shiv.min.js" type="text/javascript"></script>
<![endif]-->
- basics.css: Helferklasse für fixe Table-Layouts ergänzt.
.tbl-fixed {
table-layout: fixed;
}
- basics.css: Formatierungen für Tastatureingaben ergänzt
<kbd>
.
kbd {
border-style: solid;
border-width: 1px 2px 2px 1px;
padding: 0 2px;
border-radius: 3px;
background-color: #ededed;
}
- basics.css: Links mit dem Protokoll
tel:
werden nun wie andere Links automatisch mit einem FontAwesome-Icon (Telefonhörer) versehen.
- mail.css: Neues CSS für die Message-Templates (nicht im Website-CSS-Set zu verwenden)
- application.css: Styling für das neue Cookie-Law-Modul ergänzt.
/* =cookie law
--------------------------------------------------------------- */
.cookie-alert {
position: fixed;
z-index: 1;
bottom: 0;
left: 0;
width: 100%;
border-top-style: solid;
border-top-width: 1px;
padding: 1em 0;
}
.btn-row {
text-align: center;
}
.btn-row button + button {
margin-left: 1em;
}
- basics.css: Neue
.btn
-Modifier ergänzt
.btn--reject {
background-color: red;
}
.btn--accept {
background-color: green;
}
- basics.css: Die oben genannten Regeln basieren teils auf Ergänzungen bei bestehenden Regeln. Dort wurde
.cookie-alert
bei den kleinen Schriftgrössen und der Warnungs-Box ergänzt.
- basics.css: Spezifität verkleinert auch Entfernen von überflüssigen Element-Selektoren bei den Forms.
- basics.css: Webkit-Styling von Suchfeldern zurücksetzen, weil es in normalize.css v8 nicht mehr enthalten ist.
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
-webkit-appearance: none;
}
- application.css: unschönen Abstand bei Bildlegenden von Magnific-Popups entfernt
.mfp-content figcaption {
margin-top: 0;
}
- basics.css: top/bottom Margins bei
.row
entfernt und bei der[class*="col-"]
ergänzt. So muss bei einem späteren Umbruch der Cols kein Margin mehr ergänzt werden und es kommt auch nicht zu einer Verdoppelung der Margins.
.row {
clear: both;
}
[class*="col-"] {
position: relative;
float: left;
margin-bottom: 1.5em;
margin-left: 0; /* muss aufgrund der breite berechnet werden */
min-height: 1px;
}
- basics.css: Bild-Breite
auto
entfernt, da sie sich mit dem neuen Editor-Plugin des CMS nicht verstanden haben.
img {
width: auto;
}
- basics.css: DOTX/dotx fontsome icons ergänzt
- basics.css: .col-half ergänzt (halbe Inhaltsbreite)
- Test-Bilder durch 16 hochauflösende und frei verwendbare Bilder ausgetauscht, die sich auch für den CMS-Test eignen.
- custom.js: Responsive-Tabellen entfernt
Files für Browsersync:
- gulpfile.js
- package.json
Umbenennung des HTML-Files in default.html (Standard für Browsersync).
- normalize.css: Version 8.0
- basics.css: Vorlage für im Editor besonders ausgezeichnete Bereiche integriert. Kann beispielsweise zur Kennzeichnung eines Akkordeon-Bereichs verwendet werden.
.element
-Klasse und der Pseudo-Content müssen je nach Fall angepasst werden.
/* =editor styles (backend)
--------------------------------------------------------------- */
.editor .element {
position: relative;
border: 1px dotted red;
}
.editor .element::before {
content: 'Container';
position: absolute;
top: 0;
right: 0;
padding: 3px;
font-size: 12px;
text-transform: uppercase;
letter-spacing: 1px;
color: #fff;
background-color: red;
}
- print.css: Die alten Dokument-Icon-Klassen entfernt, deren Pfade sowieso nicht mehr aktuell waren.
- basics.css: Die .invis (aka «Screenreader-only») Klassen gemäss Artikel «2017 edition of .visuallyhidden» angepasst. Ausgeblendete Sprunglinks werden so bei :focus/:active sichtbar in den Viewport geschoben.
.invis:not(:focus):not(:active),
.sr:not(:focus):not(:active),
.sr-only:not(:focus):not(:active) {
position: absolute;
width: 1px;
height: 1px;
margin: -1px;
border: 0;
padding: 0;
white-space: nowrap;
clip-path: inset(100%);
clip: rect(0 0 0 0);
overflow: hidden;
}
- application.css: Form-Builder-Komponente für «Terms & Conditions» ergänzt.
.form-builder .form-builder-tac {
position: relative;
}
.form-builder .form-builder-tac label {
float: none;
width: 100%;
padding-top: 0;
padding-right: 0;
padding-left: 1.5em;
font-weight: normal;
}
.form-builder .form-builder-tac input[type=checkbox] {
float: none;
width: auto;
position: absolute;
left: 0;
top: 0.3em;
}
- print.css: Hoch-/Tiefstellen korrekt Formatieren_
sub
undsup
von normalize.css übernommen.
sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}
sub {
bottom: -0.25em;
}
sup {
top: -0.5em;
}
- basics.css: Helfer-Klasse für Sticky-Elemente.
.sticky {
position: -webkit-sticky;
position: sticky;
top: 0;
}
- application.css: Mehrzeilige Texteinzüge bei Checkbox- und Radio-Listen korrigiert.
.form-builder .form-option-lst li label {
…
padding-left: 1.5em;
}
.form-builder .form-option-lst li label > input {
…
margin-left: -1.5em;
}
- basics.css: Helfer-Klasse für fixe Tabellenbreiten integriert
- Helfer-Klasse für Margin-Bottom ergänzt.
table.fixed {
table-layout: fixed;
}
- basics.css / application.css / print.css: Margin-Bottom-Abstände vereinheitlicht (1.5em).
- application.css: Kalender-Klassen für einfachere Schriftschnitt und -farbenregelung ergänzt.
- basics.css:
.p
Klasse ergänzt, die Überschriften optisch in Grundtext zurücksetzt. Kann mit.nmb
ergänzt werden, um auch den Margin zu entfernen.
.p {
font-size: 1em;
font-weight: normal;
}
.nmb {
margin-bottom: 0;
}
- basics.css & application.css: Forms mit Reset-Buttons bekommen Abstände:
button + button[type=reset] {
margin-left: 1em;
}
- screen.css: [FontAwesome-Pfad] (https://ext.cdn-backslash.ch/lib/font-awesome/latest/css/font-awesome.min.css) auf aktuellen CDN-URL umgestellt
- Versionierung eingeführt gemäss Semantic Versioning 2.0.0
- normalize.css auf Version 7.0.0 aktualisiert
- Beginn der Umstellung des Changelog gemäss Keep a Changelog
Print-CSS optimiert
Kreditkartenauswahl im OSM-Bestellprozess ergänzt.
Kalender-Links mit :link
-Pseudoklasse versehen, damit Grundfarbwerte überschrieben werden.
Farbwert von Table-Header th
entfernt.
.reset
-Klasse für Tabellen definiert. Diese entspricht der .presentation
-Klasse, wobei letztere für reine Layouttabellen (in Kombination mit ARIA) gedacht ist, während .reset
nur die visuellen Tabellenformatierungen entfernen soll.
Maximalbreite bei zentrierten Bildern/Figure .aligncenter
entfernt, damit alle ausgerichteten Elemente (auch .alignleft
/ .alignright
) die gleiche Breite haben.
Für kleine Viewports bleibt nun die Klasse .aligncenter
zentriert, behält aber die natürliche Bildgrösse bei und ist damit nun einheitlich mit anderen platzierten Bildern (.alignleft
/ .alignright
).
.aligncenter {
display: table;
width: auto;
max-width: none;
}
.aligncenter figcaption {
display: table-caption;
caption-side: bottom;
}
FlexBox-Anweisungen bei ul.gallery-magnific
entfernt und damit Darstellungsprobleme in FF umgegangen, der keine %-Werte bei FlexBox-Margins akzeptierte.
Datei-Präfixe .dotx / .DOTX für Word-Vorlagen ergänzt.
Einige Syntaxfehler korrigiert (falsche Klammern bei :not()-Wert, column-gap-Wert, Gradient-Wert), Legacy-Prefixes bei den Gradients und der Retina-MQ entfernt.
Globale .sr-only
Klasse für Screenreader ergänzt, wie sie FontAwesome verwendet. Wird in teils Modulen verwendet (OSM).
Tabellen-Klassen für table.grid und table.presentation ergänzt.
Grid: Standard-Tabelle mit horizontalen Trennlinien bekommt auch vertikale Trennlinien.
Presentation: Für (wenn nicht zu umgehen) Layouttabellen. Linien und Innenabstände werden zurückgesetzt; Tabelle ist also unsichtbar. Darf keine thead oder th mehr enthalten. zudem sollte manuell oder per JS das Attribut role="presentation" ergänzt werden.
.box-Modifier-Klassen ergänzt:
- .box--warning
- .box--success
- .box--error
- .box--info
- Klasse .content auf .main geändert
- .table-responsive, .media-responsive ins basics.css verschoben
- Breakpoints auf em umgestellt (Zielwert / 16) und vereinheitlicht (768 / 520)
Update auf v5.0.0
Optischen Fokus bei Radio- und Checkbox-Inputs entfernt.
Ghost-Button Klasse .btn-ghost ergänzt. Transparenter Button mit Rahmen.
Update auf v4.2
Suchresultate-Styling entfernt. Soll neu über die globalen Modulklassen gemanagt werden.
Update auf v4.1.1
FontAwesome 4.6.1 ist gekommen. Neu wird im Master auf die «latest»-Version verwiesen. In der Produktivumgebung muss es sowieso neu verknüpft werden.
Bild-Ausrichtungsklassen vereinfach, so dass margin und max-width nur noch an je einem Ort pro CSS angepasst werden müssen. Hier sollten idealerweise Wert aus dem Grid eingetragen werden.
1 Update auf v4.0.0 2 sup/sub-CSS gelöscht (in normalize.css vorhanden)
Grundformatierungen für iFrame eingefügt, damit die veralteten HTML-Attribute weggelassen werden können.
Klassen für File-Meta-Informationen ergänzt > [pdf, 1.2 MB] .asset-meta. .asset-type .asset-size
Align-Klassen für Bildausrichtungen ergänzt. small & figcaption verbessert.
Magnific-Gallery etwas aufgeräumt, Media-Query als Basis integriert und Flexbox für Zentrierung der Bilder in der Höhe integriert. Firefox hat dann aber einen Bug und ignoriert den margin-bottom, zudem kann es mit Legenden und zentrierten Bildern zu unschönen Effekten kommen. Da muss noch eine bessere Lösung her…
Klassen für das JS-Acordion ergänzt. Klassen für Flex-Search ergänzt.
Verbesserungen in der GA-Kalenderdarstellung bei «letzte Karte verfügbar».
Globale Klasse .none wieder ergänzt. Wird für die verschlüsselten E-Mail in Comet verwendet. .none { display: none; }
WAI-ARIA Rolen-Attribute entfernt, da inzwischen überall native HTML5-Elemente im Einsatz. Validator sollte dadurch keinen Fehler mehr bringen.
Zeilenabstände bei Title-Elementen auf 1.2 verkleinert. Suchfelder explizit auf border-box umgestellt (überschreibt den Wert in normalize.css)
.form-builder für neue Street- und Zip/Town-Komponenten der Mustaches erweitert.
Die Klassen .zebra und .hover (alternierende, respektive hervorgehobene Hintergrundfarbe bei :hover) können nun auch auf Listen (ul und ol) angewendet werden.
Für Buttons nun eine Klasse .btn-secondary eingeführt. .btn:link wegen Spezifitätskonflikten ergänzt.
rem-Schriftgrössen entfernt. Tageskarten-Legenden dynamischer Gestaltet (Umbruch nun ohne Media-Queries).
Von Comet verschlüsselte E-Mail-Links in die Icon-Vergabe mit aufgenommen.
a[data-email-link]:before
Klassen für Bildausrichtungen im WYSIWYG-Editor ergänzt.
.alignleft { float: left; margin: 0 1.5em 1.5em 0; } .aligncenter { clear: both; display: block; margin: 1.5em auto; } .alignright { float: right; margin: 0 0 1.5em 1.5em; }
html5shiv-Pfad auf CDN auf «latest» umgestellt. http://cdn-backslash.ch/lib/html5shiv/latest/html5shiv.min.js
Bei .form-builer Checkboxen und Radios ohne Titel (daher solche die über 100% Breite gehen), werden nun auch die .error-Labels über 100% Breite gehen und nicht mehr gefloatet.
div:not([class*=«form-option-lst-show-title»]) label.error { float: none; width: 100%; }
vCard-Klassen isoliert, so dass diese nur innerhalb einer vCard greifen und andere Elemente mit diesen Klassen nicht tangieren.
.vcard .region, .vcard .country-name, .vcard .url { display: none; }
Update auf 3.0.3
Dem Such-Eingabefeld das required-Attribut mitgegeben, so dass keine leere Suche mehr abgeschickt werden kann.
textarea { resize: vertical; }
Accesskeys auf Empfehlung von Marco Zehe entfernt. Der Skip-Link «Direkt zum Inhalt» ist aber drinnen geblieben und gemäss diesem Artikel verbessert worden; http://viget.com/inspire/skip-link-primer
Die famfamfam-Icons für Doukmente mit FontAwesome ersetzt. Entsprechend wird die FontAwesome-Schrift vom CDN nun im screen.css geladen.
Will man lieber die alten FamFamFam-Pixelgrafiken von vom CDN laden, kann das alte CSS hier wieder gefunden werden:
Teams/Design/Snippets/CSS-Snippets/Dokumente-Icons FamFamFam.css
ID #volltextsuche gemäss Mustache ersetzt mit #search-form
legend { display: table; }
Behebt einen Bug, der verhindert dass lange Legenden im IE umbrochen werden können. http://thatemil.com/blog/2015/01/03/reset-your-fieldset/
template.htm
Footer: Created-Zeile geändert
Metatags und Links für Mobilgeräteunterstützung ergänzt:
Meta: apple-mobile-web-app-titleName des Desktop-Icons auf iOS Link: apple-touch-iconDesktop-Icon iOS, Android Link: iconIcon für Android 5 Lollipop
Metatag für Theme-Color-ergänzt. Wird in Android 5 (Lollipop) beim Blättern zwischen den offenen Fenstern verwendet. Hier sollte eine markante Farbe aus dem UI eingesetzt werden. Alternative ganz rausnehmen.
.reset im print.css ergänzt
Modernizr standardmässig eingebunden. Muss für die Produktiv-Umgebung angepasst werden.
Einige Optimierungen (Seitenumbruch nach Titeln und innerhalb Listen verhindern), .box ergänzt.
Den margin-Reset von Modul-Elementen universeller gelöst. Anstatt
.box > p:last-child, .box > ul:last-child, .box > ol:last-child, .box > dl:last-child { margin-bottom: 0; }
.box > *:last-child, fieldset > *:last-child { margin-bottom: 0; }
Idee: http://css-tricks.com/spacing-the-bottom-of-modules/
Der Ansatz «Axiomatic CSS and Lobotomized Owls» ist auch interessant, zumal er auch verschachtelt funktioniert. Problem: Er funktioniert nicht als Reset, sondern vergibt den Margin. http://alistapart.com/article/axiomatic-css-and-lobotomized-owls
Update auf 3.0.2
Formular durch ein Comet .form-builde-Form ausgewechselt.
.wrapper auch wieder mit ID #wrapper versehen (damit gotop-Link weiterhin funktioniert)
Comet .form-builder Styles ergänzt.
Span .optimale-zeilenlaenge ergänzt, der im Inhalt die optimale Zeilenlänge im Bereich 45-75 Zeichen hervorhebt.
ID’s wo möglich durch Klassen ersetzt. Dort wo Anker (zb. Accesskeys) darauf zeigen sind sie geblieben.
.clearfix-Klasse entfernt. Wird für IE8+ nicht mehr benötigt.
Comet-Print-Links integriert (href=«print» und href=«printpdf»)
basics.css
Listen-Reset .reset ist nun neutral (nicht mehr ul.reset / ol.reset) und hat dadurch kleinere Spezifität.
Alle gelisteten Datei-Suffixe auch in einer UPPERCASE-Version ergänzt.
.docx, .DOCX usw.
Update auf 3.0.1
listen-resets: margin-bottom entfernt, damit Standard-Abstand beibehalten wird
Bild mit Figure/Figcaption ergänzt.
Version 3
ergänzt:
*, *:before, *:after { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
Version 2.1.3.
rev-Attribut entfernt (nicht mehr supportet in HTML5) http://goo.gl/E9dgRb
In den IE < 9 CC’s den HTML5 Shiv ergänzt
<!—[if lt IE 9]> <script src=«http://cdn-backslash.ch/lib/html5shiv/html5shiv.js» type=«text/javascript»></script> <![endif]—>
erstellt