// Name: Drop // Description: Component to position any element next to any other element. // // Component: `uk-drop` // // Modifiers: `uk-drop-top-*` // `uk-drop-bottom-*` // `uk-drop-left-*` // `uk-drop-right-*` // `uk-drop-stack` // `uk-drop-grid` // // States: `uk-open` // // Uses: Animation // // ======================================================================== // Variables // ======================================================================== $drop-z-index: $global-z-index + 20 !default; $drop-width: 300px !default; $drop-margin: $global-margin !default; /* ======================================================================== Component: Drop ========================================================================== */ /* * 1. Hide by default * 2. Set position * 3. Set a default width */ .uk-drop { /* 1 */ display: none; /* 2 */ position: absolute; z-index: $drop-z-index; /* 3 */ box-sizing: border-box; width: $drop-width; } /* Show */ .uk-drop.uk-open { display: block; } /* Direction / Alignment modifiers ========================================================================== */ /* Direction */ [class*='uk-drop-top'] { margin-top: (-$drop-margin); } [class*='uk-drop-bottom'] { margin-top: $drop-margin; } [class*='uk-drop-left'] { margin-left: (-$drop-margin); } [class*='uk-drop-right'] { margin-left: $drop-margin; } /* Grid modifiers ========================================================================== */ .uk-drop-stack .uk-drop-grid > * { width: 100% !important; } // Hooks // ======================================================================== @if(mixin-exists(hook-drop-misc)) {@include hook-drop-misc();} // @mixin hook-drop-misc(){}