sidebar.scss 3.66 KB
Newer Older
Pan's avatar
Pan committed
1
#app {
Pan's avatar
Pan committed
2

Pan's avatar
Pan committed
3 4
  .main-container {
    min-height: 100%;
Pan's avatar
Pan committed
5
    transition: margin-left .28s;
Pan's avatar
Pan committed
6
    margin-left: $sideBarWidth;
7
    position: relative;
Pan's avatar
Pan committed
8
  }
Pan's avatar
Pan committed
9

Pan's avatar
Pan committed
10
  .sidebar-container {
11
    transition: width 0.28s;
Pan's avatar
Pan committed
12
    width: $sideBarWidth !important;
花裤衩's avatar
花裤衩 committed
13
    background-color: $menuBg;
Pan's avatar
Pan committed
14 15
    height: 100%;
    position: fixed;
Pan's avatar
Pan committed
16
    font-size: 0px;
Pan's avatar
Pan committed
17 18 19 20
    top: 0;
    bottom: 0;
    left: 0;
    z-index: 1001;
Pan's avatar
Pan committed
21
    overflow: hidden;
Pan's avatar
Pan committed
22

花裤衩's avatar
花裤衩 committed
23
    // reset element-ui css
24 25 26
    .horizontal-collapse-transition {
      transition: 0s width ease-in-out, 0s padding-left ease-in-out, 0s padding-right ease-in-out;
    }
Pan's avatar
Pan committed
27

28
    .scrollbar-wrapper {
Pan's avatar
Pan committed
29
      overflow-x: hidden !important;
30
    }
Pan's avatar
Pan committed
31

32 33 34 35
    .el-scrollbar__bar.is-vertical {
      right: 0px;
    }

花裤衩's avatar
花裤衩 committed
36 37 38 39 40 41 42 43 44 45
    .el-scrollbar {
      height: 100%;
    }

    &.has-logo {
      .el-scrollbar {
        height: calc(100% - 50px);
      }
    }

46 47 48
    .is-horizontal {
      display: none;
    }
Pan's avatar
Pan committed
49

Pan's avatar
Pan committed
50 51 52
    a {
      display: inline-block;
      width: 100%;
53
      overflow: hidden;
Pan's avatar
Pan committed
54
    }
Pan's avatar
Pan committed
55

Pan's avatar
Pan committed
56 57 58
    .svg-icon {
      margin-right: 16px;
    }
Pan's avatar
Pan committed
59

Pan's avatar
Pan committed
60 61
    .el-menu {
      border: none;
62
      height: 100%;
Pan's avatar
Pan committed
63
      width: 100% !important;
Pan's avatar
Pan committed
64
    }
Pan's avatar
Pan committed
65

66 67 68 69 70 71 72 73
    // menu hover
    .submenu-title-noDropdown,
    .el-submenu__title {
      &:hover {
        background-color: $menuHover !important;
      }
    }

Pan's avatar
Pan committed
74
    .is-active>.el-submenu__title {
75 76 77 78 79 80 81 82 83 84 85
      color: $subMenuActiveText !important;
    }

    & .nest-menu .el-submenu>.el-submenu__title,
    & .el-submenu .el-menu-item {
      min-width: $sideBarWidth !important;
      background-color: $subMenuBg !important;

      &:hover {
        background-color: $subMenuHover !important;
      }
86
    }
Pan's avatar
Pan committed
87
  }
Pan's avatar
Pan committed
88

Pan's avatar
Pan committed
89
  .hideSidebar {
Pan's avatar
Pan committed
90
    .sidebar-container {
91
      width: 54px !important;
Pan's avatar
Pan committed
92
    }
Pan's avatar
Pan committed
93

Pan's avatar
Pan committed
94
    .main-container {
95 96 97 98 99
      margin-left: 54px;
    }

    .svg-icon {
      margin-right: 0px;
Pan's avatar
Pan committed
100
    }
Pan's avatar
Pan committed
101

Pan's avatar
Pan committed
102
    .submenu-title-noDropdown {
103
      padding: 0 !important;
Pan's avatar
Pan committed
104
      position: relative;
Pan's avatar
Pan committed
105

Pan's avatar
Pan committed
106
      .el-tooltip {
107
        padding: 0 !important;
花裤衩's avatar
花裤衩 committed
108

109 110 111
        .svg-icon {
          margin-left: 20px;
        }
Pan's avatar
Pan committed
112 113
      }
    }
Pan's avatar
Pan committed
114

Pan's avatar
Pan committed
115
    .el-submenu {
116
      overflow: hidden;
Pan's avatar
Pan committed
117

Pan's avatar
Pan committed
118
      &>.el-submenu__title {
119
        padding: 0 !important;
花裤衩's avatar
花裤衩 committed
120

121 122 123
        .svg-icon {
          margin-left: 20px;
        }
Pan's avatar
Pan committed
124

Pan's avatar
Pan committed
125 126 127 128 129
        .el-submenu__icon-arrow {
          display: none;
        }
      }
    }
Pan's avatar
Pan committed
130

131 132 133 134 135 136 137 138 139 140 141 142 143
    .el-menu--collapse {
      .el-submenu {
        &>.el-submenu__title {
          &>span {
            height: 0;
            width: 0;
            overflow: hidden;
            visibility: hidden;
            display: inline-block;
          }
        }
      }
    }
Pan's avatar
Pan committed
144
  }
Pan's avatar
Pan committed
145

Pan's avatar
Pan committed
146
  .el-menu--collapse .el-menu .el-submenu {
Pan's avatar
Pan committed
147
    min-width: $sideBarWidth !important;
Pan's avatar
Pan committed
148
  }
149

花裤衩's avatar
花裤衩 committed
150
  // mobile responsive
151 152 153 154
  .mobile {
    .main-container {
      margin-left: 0px;
    }
Pan's avatar
Pan committed
155

156 157
    .sidebar-container {
      transition: transform .28s;
Pan's avatar
Pan committed
158
      width: $sideBarWidth !important;
159
    }
Pan's avatar
Pan committed
160

161 162
    &.hideSidebar {
      .sidebar-container {
163
        pointer-events: none;
164
        transition-duration: 0.3s;
Pan's avatar
Pan committed
165
        transform: translate3d(-$sideBarWidth, 0, 0);
166 167 168
      }
    }
  }
Pan's avatar
Pan committed
169

170
  .withoutAnimation {
Pan's avatar
Pan committed
171

172 173 174 175 176
    .main-container,
    .sidebar-container {
      transition: none;
    }
  }
Pan's avatar
Pan committed
177
}
Pan's avatar
Pan committed
178

179
// when menu collapsed
Pan's avatar
Pan committed
180 181 182
.el-menu--vertical {
  &>.el-menu {
    .svg-icon {
Pan's avatar
Pan committed
183 184 185
      margin-right: 16px;
    }
  }
186 187 188 189

  .nest-menu .el-submenu>.el-submenu__title,
  .el-menu-item {
    &:hover {
190
      // you can use $subMenuHover
191 192 193
      background-color: $menuHover !important;
    }
  }
194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212

  // the scroll bar appears when the subMenu is too long
  >.el-menu--popup {
    max-height: 100vh;
    overflow-y: auto;

    &::-webkit-scrollbar-track-piece {
      background: #d3dce6;
    }

    &::-webkit-scrollbar {
      width: 6px;
    }

    &::-webkit-scrollbar-thumb {
      background: #99a9bf;
      border-radius: 20px;
    }
  }
Pan's avatar
Pan committed
213
}