feat: Update version to 3.0.5 and enhance CustomBranding with new search form functionality and improved styling

This commit is contained in:
Torsten Brendgen
2026-08-19 23:33:56 +02:00
parent 36bcef54e7
commit 281dfa68de
13 changed files with 353 additions and 60 deletions
+200 -26
View File
@@ -1,44 +1,218 @@
.custom-branding-banner {
align-items: center;
background: #f3f2f1;
/*
* Custom Branding und Mega Menu sind direkte Geschwister in #CustomHeader:
*
* #CustomHeader
* .system-ndzk-bar
* .portal-branding | #CustomNavigation
*/
#CustomHeader {
align-items: stretch;
background: #ffffff;
border-bottom: 1px solid #edebe9;
box-sizing: border-box;
color: #323130;
display: flex;
display: grid;
font-family: "Segoe UI", "Segoe UI Web (West European)", sans-serif;
font-size: 14px;
gap: 16px;
min-height: 40px;
padding: 8px 24px;
grid-template-areas:
"system system"
"branding navigation";
grid-template-columns: 240px minmax(0, 1fr);
grid-template-rows: 28px 309px;
gap: 0;
height: 250px;
width: 100%;
}
.custom-branding-link {
#CustomHeader > .system-ndzk-bar {
align-items: center;
background: #c50f1f;
box-sizing: border-box;
color: #ffffff;
display: flex;
font-size: 14px;
font-weight: 600;
grid-area: system;
grid-column: 1 / -1;
grid-row: 1;
line-height: 20px;
padding: 4px 16px;
}
#CustomHeader > .portal-branding {
grid-area: branding;
grid-column: 1;
grid-row: 2;
min-width: 0;
}
#CustomHeader > #CustomNavigation {
align-items: stretch;
align-self: start;
border-bottom: 0 !important;
border-top: 0 !important;
display: flex;
grid-area: navigation;
grid-column: 2;
grid-row: 2;
height: 40px;
min-width: 0;
position: relative;
--megaMenuBarHeight: 40px;
}
#CustomHeader > #CustomNavigation > * {
width: 100%;
}
#CustomHeader > #CustomNavigation .mega-menu-main {
background: #003d79;
border-top: 0 !important;
color: #ffffff;
height: 40px;
margin-top: 0;
min-height: 40px;
}
#CustomHeader > #CustomNavigation .mega-menu-top-level,
#CustomHeader > #CustomNavigation .menu-item-link,
#CustomHeader > #CustomNavigation .menu-item-text,
#CustomHeader > #CustomNavigation .menu-item-toggle {
color: #ffffff;
}
#CustomHeader > #CustomNavigation .mega-menu-top-item:hover,
#CustomHeader > #CustomNavigation .mega-menu-top-item:focus-within,
#CustomHeader > #CustomNavigation .mega-menu-top-item:active,
#CustomHeader > #CustomNavigation .mega-menu-top-item.is-open,
#CustomHeader > #CustomNavigation .mega-menu-top-item.is-active {
background: #0f548c;
color: #ffffff;
}
/* Das geöffnete Mega Menu nutzt auch die 240-px-Fläche unterhalb des Logos. */
#CustomHeader > #CustomNavigation .mega-menu {
left: -240px;
}
#CustomHeader > #CustomNavigation .mega-menu-grid {
max-width: none;
width: 100%;
}
/* Eigene Suche im freien Bereich rechts neben dem Logo. */
#CustomHeader > #CustomBrandingSearch {
align-self: start;
grid-column: 2;
grid-row: 2;
justify-self: end;
margin: 64px 2px 0 0;
width: 272px;
z-index: 2;
}
.custom-branding-search-form {
align-items: stretch;
background: #ffffff;
border: 1px solid #8a8886;
box-sizing: border-box;
display: flex;
height: 36px;
width: 100%;
}
.custom-branding-search-form:focus-within {
border-color: #605e5c;
box-shadow: inset 0 0 0 1px #605e5c;
}
.custom-branding-search-input {
background: transparent;
border: 0;
box-sizing: border-box;
color: #323130;
flex: 1 1 auto;
font-family: inherit;
font-size: 14px;
min-width: 0;
outline: 0;
padding: 0 12px;
}
.custom-branding-search-input::placeholder {
color: #605e5c;
opacity: 1;
}
.custom-branding-search-button {
align-items: center;
background: transparent;
border: 0;
color: #005a9e;
cursor: pointer;
display: flex;
flex: 0 0 40px;
font-size: 16px;
justify-content: center;
padding: 0;
}
.custom-branding-search-button:hover,
.custom-branding-search-button:focus {
background: #f3f2f1;
color: #004578;
outline: 0;
}
.custom-branding-search-button:focus-visible {
box-shadow: inset 0 0 0 2px #605e5c;
}
.ms-compositeHeader .ms-compositeHeader-searchBoxContainer {
display: none !important;
}
.portal-branding {
align-items: flex-start;
border: 0;
box-sizing: border-box;
display: flex;
height: 220px;
justify-content: flex-start;
padding: 0;
width: 240px;
}
.portal-branding-home {
align-items: flex-start;
color: #323130;
display: block;
width: 240px;
text-decoration: none;
}
.custom-branding-link:hover {
color: #004578;
text-decoration: underline;
.portal-branding-home:hover {
color: #201f1e;
text-decoration: none;
}
.custom-branding-link:focus-visible,
.custom-branding-banner button:focus-visible {
outline: 2px solid #005a9e;
outline-offset: 2px;
.portal-branding-home:focus-visible {
outline: 2px solid #605e5c;
outline-offset: 3px;
}
@media screen and (max-width: 640px) {
.custom-branding-banner {
align-items: flex-start;
flex-direction: column;
gap: 4px;
padding: 8px 12px;
}
.portal-branding-logo {
display: block;
height: 220px;
object-fit: contain;
width: 240px;
background-image: url(http://portal.contoso.local/Branding/Images/logo-background.png);
background-repeat: no-repeat;
}
@media (forced-colors: active) {
.custom-branding-banner {
border-bottom: 1px solid CanvasText;
#CustomHeader,
.portal-branding,
.system-ndzk-bar {
border-color: CanvasText;
}
}
+68 -11
View File
@@ -17,24 +17,81 @@
"placeholdertop": {
"elements": [
{
"type": "section",
"type": "div",
"content": "System NDzK",
"attributes": {
"class": "custom-branding-banner",
"role": "region",
"aria-label": "Portalhinweis"
"class": "system-ndzk-bar",
"role": "note"
}
},
{
"type": "div",
"attributes": {
"class": "portal-branding",
"role": "banner",
"aria-label": "Portal-Kopfbereich"
},
"children": [
{
"type": "strong",
"content": "Willkommen im Portal"
"type": "a",
"attributes": {
"class": "portal-branding-home",
"href": "~sitecollection/SitePages/Home.aspx",
"title": "Zur Portal-Startseite"
},
"children": [
{
"type": "img",
"attributes": {
"class": "portal-branding-logo",
"src": "~sitecollection/SiteAssets/branding/logo.png",
"alt": "Zentrale Abbildende Aufklärung"
}
}
]
}
]
},
{
"type": "form",
"attributes": {
"id": "CustomBrandingSearch",
"class": "custom-branding-search-form",
"role": "search",
"aria-label": "Diese Website durchsuchen",
"action": "~sitecollection/_layouts/15/search.aspx/siteall",
"method": "get"
},
"children": [
{
"type": "input",
"attributes": {
"class": "custom-branding-search-input",
"type": "search",
"name": "q",
"placeholder": "Diese Website durchsuchen",
"autocomplete": "off",
"maxlength": "500",
"aria-label": "Diese Website durchsuchen"
}
},
{
"type": "a",
"content": "Zur Startseite",
"type": "button",
"attributes": {
"href": "~sitecollection/SitePages/Home.aspx",
"class": "custom-branding-link"
}
"class": "custom-branding-search-button",
"type": "submit",
"title": "Suchen",
"aria-label": "Suchen"
},
"children": [
{
"type": "span",
"attributes": {
"class": "ms-Icon ms-Icon--Search",
"aria-hidden": "true"
}
}
]
}
]
}