das/public/css/sidebar.scss

329 lines
6.1 KiB
SCSS
Raw Normal View History

2024-08-22 04:15:52 +00:00
.sidebar {
position: fixed;
top: 0;
left: 0;
height: 100%;
width: 275px;
background: var(--bg-menu);
z-index: 100;
border-radius: 0 35px;
transition: all 0.3s ease;
margin-top: 6rem;
overflow: hidden;
}
.sidebar .bg-sidebar {
height: 100vh;
width: unset !important;
position: absolute;
z-index: -1;
opacity: 0.15;
}
.sidebar.close {
width: 55px;
border-radius: 0 20px;
}
.sidebar.close:hover {
width: 260px;
border-radius: 0 35px;
}
.sidebar.close:hover .nav-links,
.sidebar .nav-links {
height: 100%;
padding: 10px 0 150px 4px;
overflow: auto;
}
.sidebar .nav-links .nav-menu,
.sidebar.close .nav-links .nav-menu {
margin-bottom: 7px;
}
.sidebar.close:hover .nav-links .nav-menu.active i,
.sidebar.close .nav-links .nav-menu.active {
background: transparent;
}
.sidebar.close .nav-links {
overflow: visible;
}
.sidebar .nav-links::-webkit-scrollbar {
display: none;
}
.sidebar .nav-links li {
position: relative;
list-style: none;
transition: all 0.2s ease;
}
.hideBar {
position: absolute;
top: 0;
left: 260px;
width: 100%;
height: 100%;
z-index: 9999999;
background: transparent;
border: none;
outline: none;
cursor: pointer;
display: none;
}
.sidebar .nav-links li .arrow-link {
display: flex;
align-items: center;
justify-content: space-between;
}
.sidebar.close .nav-links li .arrow-link {
display: block;
}
.sidebar .nav-links .nav-icon {
height: 40px;
width: 40px;
text-align: center;
line-height: 55px;
color: #fff;
font-size: 18px;
margin-left: 3px;
cursor: pointer;
transition: all 0.2s ease;
}
.sidebar .nav-links .nav-icon svg {
width: 20px;
height: 20px;
margin-bottom: 2px;
}
.sidebar.close .nav-links .nav-menu.active i {
height: 46px;
width: 46px;
text-align: center;
background: var(--bg-sub-menu);
color: #fff;
font-size: 18px;
cursor: pointer;
margin-left: 7px;
border-radius: 14px;
transition: all 0.2s ease;
}
.sidebar.close:hover .nav-links .nav-menu.active,
.sidebar .nav-links .nav-menu.active {
width: 95%;
border-radius: 0 30px 30px 0;
background: var(--bg-sub-menu);
transition: all 0.2s ease;
}
.sidebar .nav-links .nav-menu i.arrow {
color: #fff;
margin-left: 22px;
font-size: 14px;
transition: all 0.3s ease;
}
.sidebar.close:hover .nav-links .arrow-link.active i.arrow,
.sidebar .nav-links .arrow-link.active i.arrow {
transform: rotate(-180deg);
transition: all 0.2s ease;
}
.arrow {
margin-left: 30px;
fill: #ffffffa3;
color: #ffffffa3;
transform: rotate(270deg);
transition: all 0.2s ease;
}
.sidebar.close .nav-links .arrow {
display: none;
}
.sidebar.close:hover .nav-links .arrow {
display: block;
opacity: 0;
visibility: hidden;
animation: arrowDelay 0.3s 0.4s forwards;
}
@keyframes arrowDelay {
to {
opacity: 1;
visibility: visible;
}
}
.sidebar.close:hover .nav-links li a,
.sidebar .nav-links li a {
display: flex;
align-items: center;
text-decoration: none;
}
.sidebar.close:hover .nav-links li a .nav-name,
.sidebar .nav-links li a .nav-name {
display: flex;
justify-content: space-between;
align-items: center;
}
.sidebar.close:hover .nav-links li a .link_name,
.sidebar .nav-links li a .link_name {
width: 160px;
font-size: 13px;
font-weight: 500;
line-height: 30px;
color: #fff;
overflow: hidden;
margin-top: 6px;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
transition: all 0.2s ease;
}
.sidebar.close .nav-links li a .link_name {
display: none;
}
.sidebar.close:hover .nav-links li .list-link-head,
.sidebar .nav-links li .list-link-head {
display: flex;
align-items: center;
text-decoration: none;
cursor: pointer;
}
.sidebar.close:hover .nav-links li .list-link-head .nav-name,
.sidebar .nav-links li .list-link-head .nav-name {
display: flex;
justify-content: space-between;
align-items: center;
}
.sidebar.close:hover .nav-links li .list-link-head .link_name,
.sidebar .nav-links li .list-link-head .link_name {
width: 160px;
font-size: 13px;
font-weight: 500;
line-height: 30px;
color: #fff;
overflow: hidden;
margin-top: 6px;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
transition: all 0.2s ease;
}
.sidebar.close .nav-links li .list-link-head .link_name {
display: none;
}
.sidebar.close:hover .nav-links .nav-menu .submenu,
.sidebar .nav-links .nav-menu .submenu {
display: block;
overflow: hidden;
max-height: 0;
transition: max-height 0.2s ease-out;
}
.sidebar .nav-links .nav-menu .submenu li {
position: relative;
padding-left: 45px;
transition: all 0.2s ease;
padding-top: 5px;
padding-bottom: 5px;
}
.sidebar.close .nav-links .nav-menu .submenu {
display: none;
}
.sidebar .nav-links .nav-menu .submenu .submenu-link a {
position: relative;
color: #fff;
font-size: 12px;
padding: 5px 0;
text-transform: capitalize;
opacity: 1;
transition: all 0.2s ease;
width: 85%;
}
.arrow-link.active .arrow {
transform: rotate(1deg);
margin-left: 30px;
}
.sidebar .nav-links .nav-menu .submenu .submenu-link.active {
width: 93%;
border-radius: 0 30px 30px 0;
padding-right: 6px;
background: var(--bg-sub-menu);
transition: all 0.2s ease;
}
.sidebar .nav-links .nav-menu .submenu .submenu-link.active a {
margin-left: 8px;
transition: all 0.2s ease;
}
.sidebar .nav-links .nav-menu .submenu .submenu-link a::before {
content: "";
position: absolute;
top: 12px;
left: -14px;
width: 6px;
height: 6px;
border-radius: 50%;
background: var(--bg-sub-menu);
transition: all 0.2s ease;
}
.sidebar .nav-links .nav-menu .submenu .submenu-link.active a::before {
background: var(--white);
}
.submenu-level3 {
padding-left: 20px !important;
transition: all 0.2s ease;
::before {
content: "";
position: absolute;
top: 6px !important;
left: -14px;
width: 6px;
height: 6px;
border-radius: 50%;
background: var(--bg-sub-menu);
transition: all 0.2s ease;
}
a {
color: #fff;
font-size: 12px;
opacity: 0.7 !important;
transition: all 0.2s ease;
padding: 0 !important;
}
}
.menu-level3 {
display: none;
transition: all 0.2s ease;
}