_sidemenu.scss 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301
  1. .sidemenu {
  2. position: fixed;
  3. display: flex;
  4. flex-flow: column;
  5. flex-direction: column;
  6. width: $side-menu-width;
  7. z-index: $zindex-sidemenu;
  8. a:focus {
  9. text-decoration: none;
  10. }
  11. .sidemenu__logo_small_breakpoint {
  12. display: none;
  13. }
  14. .sidemenu__close {
  15. display: none;
  16. }
  17. @include media-breakpoint-up(sm) {
  18. background: $side-menu-bg;
  19. height: auto;
  20. box-shadow: $side-menu-shadow;
  21. position: relative;
  22. z-index: $zindex-sidemenu;
  23. }
  24. }
  25. // body class that hides sidemenu
  26. .sidemenu-hidden {
  27. .sidemenu {
  28. display: none;
  29. }
  30. }
  31. .sidemenu__top {
  32. padding-top: 3rem;
  33. flex-grow: 1;
  34. }
  35. .sidemenu__bottom {
  36. padding-bottom: $spacer;
  37. }
  38. .sidemenu__top,
  39. .sidemenu__bottom {
  40. display: none;
  41. @include media-breakpoint-up(sm) {
  42. display: block;
  43. }
  44. }
  45. .sidemenu-item {
  46. position: relative;
  47. @include left-brand-border();
  48. @include media-breakpoint-up(sm) {
  49. &.active,
  50. &:hover {
  51. background-color: $side-menu-item-hover-bg;
  52. @include left-brand-border-gradient();
  53. .dropdown-menu {
  54. margin: 0;
  55. display: block;
  56. opacity: 0;
  57. top: 0px;
  58. // important to overlap it otherwise it can be hidden
  59. // again by the mouse getting outside the hover space
  60. left: $side-menu-width - 2px;
  61. @include animation('dropdown-anim 150ms ease-in-out 100ms forwards');
  62. z-index: $zindex-sidemenu;
  63. }
  64. }
  65. }
  66. }
  67. .dropup.sidemenu-item:hover .dropdown-menu {
  68. top: auto !important;
  69. }
  70. .sidemenu-link {
  71. color: $link-color;
  72. line-height: 42px;
  73. padding: 0px 10px 0px 10px;
  74. display: block;
  75. position: relative;
  76. font-size: 16px;
  77. border: 1px solid transparent;
  78. text-align: center;
  79. img {
  80. border-radius: 50%;
  81. width: 28px;
  82. height: 28px;
  83. box-shadow: 0 0 14px 2px rgba(255, 255, 255, 0.05);
  84. }
  85. }
  86. @include keyframes(dropdown-anim) {
  87. 0% {
  88. opacity: 0;
  89. //transform: translate3d(-5%,0,0);
  90. }
  91. 100% {
  92. opacity: 1;
  93. //transform: translate3d(0,0,0);
  94. }
  95. }
  96. .icon-circle {
  97. width: 35px;
  98. height: 35px;
  99. display: inline-block;
  100. .fa,
  101. .icon-gf,
  102. .gicon {
  103. color: $side-menu-link-color;
  104. position: relative;
  105. opacity: 0.7;
  106. font-size: 130%;
  107. height: 22px;
  108. width: 22px;
  109. }
  110. .fa {
  111. top: 2px;
  112. position: relative;
  113. }
  114. .icon-gf {
  115. top: 5px;
  116. }
  117. img {
  118. position: relative;
  119. }
  120. }
  121. .side-menu-header {
  122. padding: 10px 10px 10px 20px;
  123. white-space: nowrap;
  124. background-color: $side-menu-item-hover-bg;
  125. font-size: 17px;
  126. color: #ebedf2;
  127. }
  128. .side-menu-header-link {
  129. // Removes left-brand-border-gradient from link
  130. color: #ebedf2 !important;
  131. border: none !important;
  132. padding: 0 !important;
  133. }
  134. .dropdown-menu--sidemenu > li > .side-menu-header-link:hover {
  135. // Makes sure it looks good on light theme
  136. color: #fff !important;
  137. background-color: $side-menu-item-hover-bg !important;
  138. }
  139. .sidemenu-subtitle {
  140. padding: 0.5rem 1rem 0.5rem;
  141. font-size: $font-size-sm;
  142. color: $text-color-weak;
  143. border-bottom: 1px solid $dropdownDividerBottom;
  144. margin-bottom: $space-xs;
  145. white-space: nowrap;
  146. }
  147. li.sidemenu-org-switcher {
  148. border-bottom: 1px solid $dropdownDividerBottom;
  149. }
  150. .sidemenu-org-switcher__org-name {
  151. font-size: $font-size-base;
  152. }
  153. .sidemenu-org-switcher__org-current {
  154. font-size: $font-size-xs;
  155. color: $text-color-weak;
  156. position: relative;
  157. top: -2px;
  158. }
  159. .sidemenu-org-switcher__switch {
  160. font-size: $font-size-sm;
  161. padding-left: 1.5rem;
  162. display: flex;
  163. align-items: center;
  164. > i.fa.fa-random {
  165. margin-right: $space-xs;
  166. top: 1px;
  167. }
  168. }
  169. .sidemenu__logo {
  170. display: block;
  171. padding: 0.4rem 1rem 0.4rem 0.65rem;
  172. min-height: $navbarHeight;
  173. position: relative;
  174. height: $navbarHeight - 1px;
  175. &:hover {
  176. background: $navbarButtonBackgroundHighlight;
  177. }
  178. img {
  179. width: 30px;
  180. position: relative;
  181. top: 5px;
  182. left: 4px;
  183. }
  184. }
  185. @include media-breakpoint-down(xs) {
  186. .sidemenu-open--xs {
  187. li {
  188. font-size: $font-size-lg;
  189. }
  190. .sidemenu {
  191. width: 100%;
  192. background: $side-menu-bg-mobile;
  193. height: auto;
  194. box-shadow: $side-menu-shadow;
  195. position: relative;
  196. z-index: $zindex-sidemenu;
  197. }
  198. .sidemenu__close {
  199. display: block;
  200. font-size: $font-size-md;
  201. position: relative;
  202. top: -3px;
  203. }
  204. .sidemenu__top,
  205. .sidemenu__bottom {
  206. display: block;
  207. }
  208. .sidemenu-item {
  209. border-right: 2px solid transparent;
  210. }
  211. }
  212. .sidemenu {
  213. .sidemenu__logo {
  214. display: none;
  215. }
  216. .sidemenu__logo_small_breakpoint {
  217. padding: 14px 10px 26px 13px;
  218. display: flex;
  219. flex-direction: row;
  220. justify-content: space-between;
  221. align-items: baseline;
  222. .fa-bars {
  223. font-size: 25px;
  224. }
  225. }
  226. .sidemenu__top {
  227. padding-top: 0rem;
  228. }
  229. .side-menu-header {
  230. padding-left: 10px;
  231. }
  232. .sidemenu-link {
  233. text-align: left;
  234. }
  235. .sidemenu-icon {
  236. display: none;
  237. }
  238. .dropdown-menu--sidemenu {
  239. display: block;
  240. position: unset;
  241. width: 100%;
  242. float: none;
  243. margin-top: $space-sm;
  244. margin-bottom: $space-sm;
  245. > li > a {
  246. padding-left: 15px;
  247. }
  248. }
  249. .sidemenu__bottom {
  250. .dropdown-menu--sidemenu {
  251. display: flex;
  252. flex-direction: column-reverse;
  253. }
  254. }
  255. }
  256. }