wekan/client/components/main/header.css
copilot-swe-agent[bot] 97dd5d2064 Resolve merge conflicts by accepting PR #6131 changes
Co-authored-by: xet7 <15545+xet7@users.noreply.github.com>
2026-02-07 16:30:08 +00:00

363 lines
8.2 KiB
CSS

#header {
display: flex;
justify-content: stretch;
align-items: center;
color: #fff;
transition: background-color 0.4s;
background: #2980b9;
}
#header #header-main-bar {
padding: 0.3lh 0.5ch;
display: flex;
flex: 1;
}
#header #header-main-bar h1 {
margin: 0;
line-height: unset;
}
#header #header-main-bar h1 .board-header-watch-icon {
padding-left: 7px;
}
#header #header-main-bar h1 a.fa,
#header #header-main-bar h1 a i.fa {
color: #fff;
}
#header #header-main-bar h1 .back-btn {
margin-right: 10px;
}
#header #header-main-bar .wekan-logo {
margin: 3px auto auto;
width: 97px;
opacity: 0.6;
transition: opacity 0.15s;
float: right;
}
#header #header-main-bar .wekan-logo:hover {
opacity: 0.9;
}
#header #header-main-bar .board-header-btn {
color: #f2f2f2;
display: flex;
flex-wrap: wrap;
column-gap: 0.5ch;
justify-content: center;
overflow: hidden;
text-align: center;
}
#header #header-main-bar .board-header-btn i.fa {
float: left;
display: block;
line-height: 28px;
color: #f2f2f2;
margin: 0 10px;
}
#header #header-main-bar .board-header-btn i.fa + span {
display: flex;
align-items: center;
margin-right: 10px;
}
#header #header-main-bar .board-header-btn .board-header-btn-close {
float: right;
}
#header #header-main-bar .board-header-btn .board-header-btn-close i.fa {
margin: 0 6px;
}
#header #header-main-bar .board-header-btn .board-header-btn-icon {
float: left;
display: block;
line-height: 28px;
color: #27ae60;
margin: 0 10px;
cursor: pointer;
}
#header #header-main-bar .board-header-btn.is-active,
#header #header-main-bar h1.is-clickable.is-active,
#header #header-main-bar .board-header-btn:hover:not(.is-disabled),
#header #header-main-bar h1.is-clickable:hover:not(.is-disabled) {
background: rgba(0,0,0,0.15);
}
#header #header-main-bar .board-header-btn.js-multiselection-active {
background: #1a5080;
}
#header #header-main-bar .board-header-btn.js-multiselection-active:hover {
background: #0f3a5f;
}
#header #header-main-bar .separator {
border-left: 0.2ch solid rgba(255,255,255,0.3);
display: flex;
align-self: stretch;
flex: 0;
}
/* those are default values, some overriden from mobile below */
#header-quick-access {
color: #fff;
transition: background-color 0.4s;
background: #2573a7;
padding: clamp(2vh, 0.5lh, 2%) 0.8rlh;
font-size: var(--quick-header-scale);
/* the grid template is different for mobile */
display: grid;
grid-template-areas:
"logo left right";
grid-template-columns: 1fr 10fr auto;
justify-content: space-between;
gap: 2ch;
#header-quick-access-left {
display: flex;
flex: 0;
overflow-x: auto;
align-items: center;
justify-content: start;
gap: 10ch;
}
.header-quick-access-list {
display: flex;
padding: 0 1ch;
gap: 2ch;
/* this makes sure the scrollbar is at the bottom of header,
not right below text */
align-self: stretch;
align-items: center;
scrollbar-width: thin;
scrollbar-color: rgba(255, 255, 255, 0.3) transparent;
justify-content: start;
transition: opacity 0.2s;
overflow-x: auto;
overflow-y: hidden;
}
.logo-container {
grid-area: logo;
display: flex;
/* that is, related to the whole grid, not taking account other column's width */
align-self: stretch;
/* elegant solution to force the row to force the image
to adopt the height of other columns */
min-height: 100%;
height: 0;
a, img {
display: flex;
align-self: stretch;
width: auto;
}
}
#header-quick-access-right {
grid-area: right;
display: flex;
justify-content: end;
}
#header-quick-access-icons {
display: flex;
justify-content: start;
align-items: center;
gap: 1ch;
}
#header-quick-access-left {
grid-area: left;
display: grid;
text-decoration: none;
color: #fff;
border-radius: 0.4ch;
transition: background-color 0.2s ease;
gap: 2ch;
grid-auto-flow: column;
}
}
body.mobile-mode {
#header-quick-access {
row-gap: 0.5lh;
grid-template-areas:
"logo icons"
"board board";
grid-template-columns: 1fr 1fr;
justify-content: center;
align-items: center;
#header-quick-access-left {
grid-area: board;
justify-self: center;
}
#header-quick-access-right {
grid-area: icons;
}
}
.separator {
display: none !important;
}
.logo-container {
img {
max-height: max(1lh, 5vmax, 3ch);
}
}
}
#header-quick-access.mobile-view .header-quick-access-list {
display: none;
}
#header-quick-access .home-icon {
display: flex;
/* prevents wrap */
flex-shrink: 0;
}
#header-quick-access .home-icon a:hover {
background-color: rgba(255, 255, 255, 0.1);
}
#header-quick-access a {
text-decoration: none;
}
#header-quick-access i.fa {
color: #fff;
}
#header-quick-access i.fa:hover {
color: #ccc;
}
#header-quick-access #header-user-bar,
#header-quick-access #header-new-board-icon,
#header-quick-access ul li {
color: #d4d4d4;
}
#header-quick-access #header-user-bar .fa,
#header-quick-access #header-new-board-icon .fa,
#header-quick-access ul li .fa {
color: inherit;
}
#header-quick-access #header-user-bar a:hover,
#header-quick-access #header-new-board-icon a:hover,
#header-quick-access ul li a:hover,
#header-quick-access #header-user-bar a.is-active,
#header-quick-access #header-new-board-icon a.is-active,
#header-quick-access ul li a.is-active {
color: #fff;
}
#header-quick-access ul.header-quick-access-list {
transition: opacity 0.2s;
overflow: hidden;
white-space: nowrap;
flex: 1; /* Take up available space */
min-width: 0; /* Allow shrinking below content size */
display: flex; /* Use flexbox for better control */
align-items: center;
}
/* Hide scrollbar completely */
#header-quick-access ul.header-quick-access-list::-webkit-scrollbar {
display: none;
}
#header-quick-access ul.header-quick-access-list {
-ms-overflow-style: none; /* IE and Edge */
scrollbar-width: none; /* Firefox */
}
#header-quick-access ul.header-quick-access-list li {
display: inline-block; /* Keep inline-block for proper spacing */
width: auto;
color: #d9d9d9;
flex-shrink: 0; /* Prevent items from shrinking */
white-space: nowrap; /* Prevent text wrapping within items */
}
#header-quick-access ul.header-quick-access-list li a .viewer {
display: inline;
white-space: nowrap;
}
#header-quick-access ul.header-quick-access-list li a .viewer p {
display: inline;
white-space: nowrap;
}
#header-quick-access ul.header-quick-access-list li.current {
color: #f2f2f2;
}
#header-quick-access ul.header-quick-access-list li.current.empty {
padding: 12px 10px 12px 10px;
flex: 1;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
cursor: default;
opacity: 0.85;
font-style: italic;
}
#header-quick-access ul.header-quick-access-list li:first-child .fa-home,
#header-quick-access ul.header-quick-access-list li:nth-child(3) .fa-globe {
margin-right: 5px;
}
#header-quick-access ul.header-quick-access-list li a.js-create-board {
margin-left: 5px;
}
#header-quick-access #header-user-bar,
#header-quick-access #header-new-board-icon {
flex-shrink: 0;
}
#header-quick-access #header-user-bar .header-user-bar-name,
#header-quick-access #header-help {
display: flex;
align-items: center;
gap: 0.2lh;
}
#header {
font-size: var(--header-scale);
padding: 0.2lh 1ch;
}
#header-quick-access #header-user-bar .header-user-bar-name i.fa-chevron-down {
margin-right: 4px;
}
#header-quick-access #header-new-board-icon {
flex-grow: 1;
margin: 6px 5px 0;
width: 12px;
}
@media print {
#header-quick-access .allBoards,
#header-quick-access ul,
#header-quick-access .js-toggle-desktop-drag-handles,
#header-quick-access #notifications,
#header-quick-access #header-new-board-icon,
#header #header-main-bar .board-header-btns {
display: none;
}
#header #header-user-bar {
float: right;
}
}
.announcement .viewer {
display: inline-block;
}
.announcement,
.offline-warning {
width: 100%;
text-align: center;
padding: 0;
margin: 0;
background: #f8ecbd;
clear: both;
}
.announcement p,
.offline-warning p {
margin: 7px;
padding: 0;
}
#headerIsSettingDatabaseCallDone {
display: flex;
visibility: hidden;
flex: 1;
align-items: center;
}