t_culture1_2/assets/stylesheets/template/modules/menu.scss

351 lines
6.6 KiB
SCSS
Executable File

@charset "utf-8";
@import "../initial";
.navbar-collapse.collapse{
@media(min-width: 769px){
display: block !important;
width: 20%;
background: #eff3f6;
float: left;
top:14.5vw;
clear: both;
position: absolute;
}
}
.navbar-collapse.in {
overflow-y: unset;
}
.modules-menu {
font-family: $sub-font;
max-height: none;
z-index: 1020;
li {
white-space: nowrap;
}
.menu-drop.opened {
transform: rotateX(180deg);
}
.modules-menu-level-0 {
margin: 0 0 0.5em 0;
padding: 0;
list-style: none;
width: 100%;
.has-dropdown.level-1.active {
.modules-menu-level-1 {
display: block;
}
}
.has-dropdown.level-2.active {
.modules-menu-level-2 {
display: block;
}
}
// .dropdown-toggle-icon {
// position: absolute;
// top: 0.5em;
// right: 0.3em;
// width: 2.5em;
// height: 2.5em;
// cursor: pointer;
// line-height: 2.5em;
// font-size: 1em;
// text-align: center;
// border-radius: 0.13em;
// }
.menu-drop {
position: absolute;
top: 0.5em;
right: 0.3em;
width: 2.5em;
height: 2.5em;
cursor: pointer;
line-height: 2.5em;
font-size: 1em;
text-align: center;
border-radius: 0.13em;
}
// .dropdown-toggle-icon.level-1 {
// background-color: lighten($theme-gray, 10%);
// }
// .dropdown-toggle-icon.level-2 {
// background-color: lighten($theme-gray, 10%);
// }
& > li {
position: relative;
margin: 0;
padding: 0 1em;
border-bottom: 0.0625em solid #e0e0e0;
width: 100%;
// border-bottom: 0.0625em solid lighten($theme-gray, 5%);
& > a {
display: block;
padding: 1.125em 0;
font-family: $main-font;
}
&:hover {
// background-color: $theme-color-second;
& > a {
color:$theme-color-four;
}
@media (min-width: $screen-sm) {
// background-color: $theme-color-second;
}
}
@media (min-width: $screen-sm) {
position: relative;
margin: 0;
padding: 0;
&:first-child {
margin-left: 0;
}
&:last-child {
margin-right: 0;
.modules-menu-level-1 {
left: auto;
&:before {
right: 0.625em;
left: auto;
}
& > li {
padding-right: 1em;
padding-left: 1em;
& > a {
padding-left: 0;
}
}
.modules-menu-level-2 {
right: 100%;
left: auto;
}
}
}
& > a {
padding:1rem;
color: $theme-color-main;
}
&:hover {
.modules-menu-level-1 {
// display: block;
}
}
}
}
}
.modules-menu-level-1 {
display: none;
min-width: 100%;
margin: 0;
padding: 0;
list-style: none;
z-index: 1;
& > li {
position: relative;
& + li {
border-top: 0.0625em solid #e0e0e0;
}
& > a {
display: block;
padding: 1em 1.5em;
font-family: $main-font;
font-size: 0.938em;
}
&:hover {
background-color: $theme-color-second;
& > a {
color: #fff;
}
}
}
@media (min-width: $screen-sm) {
& > li {
padding-right: 2em;
& > a {
padding-left: 1em;
}
&:hover {
.modules-menu-level-2 {
display: block;
}
}
}
}
}
.modules-menu-level-2 {
display: none;
margin: 0;
padding: 0;
background-color: $theme-gray;
list-style: none;
& > li {
& + li {
border-top: 0.0625em solid lighten($theme-gray, 5%);
}
& > a {
display: block;
padding: 0.9em 3em;
font-family: $main-font;
color: #fff;
}
&:hover {
background-color: $theme-color-four;
}
}
@media (min-width: $screen-sm) {
position: absolute;
top: 0;
left: 100%;
& > li > a {
padding-left: 1em;
}
}
}
}
.has-mobile-dropdown {
.modules-menu {
.dropdown-toggle-icon {
display: block;
}
}
}
@media (max-width: 767px) {
.modules-menu .modules-menu-level-0 {
flex-direction: column;
}
}
//mobile
.mobile-menu {
z-index: 1051;
width: 100vw;
position: fixed;
top: 0;
right: 0;
bottom: 0;
display: none;
&.active {
display: block;
}
.modules-menu {
width: 80%;
background: #fff;
height:100%!important;
top: 0;
padding-top: 40px;
@media(max-width: $screen-xs){
padding-top: 80px!important;
}
@media(min-width:1900px){
width: 450px;
}
}
.modules-menu .modules-menu-level-0 > li > a, .modules-menu .modules-menu-level-0 .menu-drop,.modules-menu .modules-menu-level-0 > li { }
.navbar-toggle {
position: absolute;
right: 0;
background: transparent;
// top: 40px;
top: 0;
z-index: 1052;
// height: 100vh;
margin: 0;
width: 20%;
border: 0;
transition: all 0.5s;
-moz-transition: all 0.5s;
-webkit-transition: all 0.5s;
-o-transition: all 0.5s;
@media(max-width: $screen-xs){
top: 40px;
}
@media(min-width:1900px){
left: 380px;
}
}
.cover {
@media(max-width:1024px){
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
background-color: #00000033;
z-index: 0;
}
}
}
//覆蓋bootstrap nav設定
.mobile-menu .modules-menu.collapsing {
overflow:unset !important;
transform: translateX(-100%);
-webkit-transition-timing-function:ease;
-o-transition-timing-function:ease;
transition-timing-function:ease;
-webkit-transition-duration:.35s;
-o-transition-duration:.35s;
transition-duration:.35s;
-webkit-transition-property:transform;
-o-transition-property:transform;
transition-property:transform;
}
.mobile-menu .modules-menu.collapse.in {
transform: translateX(-100%);
-webkit-transition-timing-function:ease;
-o-transition-timing-function:ease;
transition-timing-function:ease;
-webkit-transition-duration:.35s;
-o-transition-duration:.35s;
transition-duration:.35s;
-webkit-transition-property:transform;
-o-transition-property:transform;
transition-property:transform;
}
.mobile-menu .collapse.navbar-collapse.modules-menu {
overflow-y: scroll;
transform: translateX(0%);
}