@import 'constants'; #WRAPPER > #MENU-SIDE{ /* [1] Elements du menu =========================================================*/ & > span{ display: block; position: relative; width: calc( 100% - 2*1em - 2*1.5em ); padding: .8em 1.5em; padding-left: calc( 1.5em + 2*1em ); border-bottom: 1px solid transparent; background: url('/f/svg/circle/st/menu-side/29282e') 1em center no-repeat, url('/f/svg/sub/st/menu-side/aaaaaa') right 1.5em center no-repeat; background-size: 2em 2em, .5em .5em; // Modification du sens de la fleche quand le sous-menu est deroule &.active{ background: url('/f/svg/circle/st/menu-side/29282e') 1em center no-repeat, url('/f/svg/sub-active/st/menu-side/ffffff') right 1.5em center no-repeat; background-size: 2em 2em, .5em .5em; } color: $dark-fg; font-size: .85em; text-shadow: 1px 1px 0 darken($dark-bg, 5); transition: color .2s ease-in-out, background .2s ease-in-out, box-shadow .2s ease-in-out, border .2s ease-in-out; cursor: pointer; /* (1) Icone svg */ & > svg, & > svg *{ position: absolute; top: calc( 50% - 1em/2 ); left: 1.5em; width: 1em; height: 1em; fill: $dark-fg !important; transition: fill .2s ease-in-out; } /* (2) @hover ou .active -> survol souris ou active */ &:hover, &.active{ border-bottom-color: darken($dark-bg-primary, 2); box-shadow: inset 0 0 1em darken($dark-bg-primary, 1); background-color: $dark-bg-primary; color: $dark-fg-primary; text-shadow: 1px 1px 0 darken($dark-bg-primary, 5); & > svg, & > svg *{ fill: #fff !important; } } } /* [2] Elements du menu avec separateur en dessous =========================================================*/ & > span.sep{ border-bottom: 1px solid lighten($dark-bg, 10); } /* [3] Gestion du menu deroulant =========================================================*/ /* (1) Quand le menu est deroule */ & > span:not(.icon) + div.sub>span{ display: block; position: relative; width: calc( 100% - 1.5em - 2.5em ); padding: .5em 1.5em; padding-left: 2.5em; border-bottom: 1px solid transparent; background: darken($dark-bg-primary, 2) url('/f/svg/sub/st/menu-side/888888') 1.5em center no-repeat;; background-size: .5em; color: darken($dark-fg, 20); font-size: .85em; cursor: pointer; transition: color .2s ease-in-out; // Animation de @hover ou .active &:hover, &.active{ color: $dark-fg-primary; background-image: url('/f/svg/sub/st/menu-side/ffffff'); } } & > span:not(.icon):not(.active) + div.sub>span{ display: none; } }