papercss/src/components/_popovers.scss

96 lines
1.6 KiB
SCSS
Raw Normal View History

2017-11-13 15:38:57 +01:00
// Core popovers
[popover-top],
[popover-right],
[popover-bottom],
[popover-left]{
2017-10-31 00:00:40 +01:00
position: relative;
margin: 24px;
2017-11-13 15:38:57 +01:00
// Popover hover trigger
&:hover {
2017-12-19 17:52:33 +01:00
&:after {
2017-11-13 15:38:57 +01:00
transition: opacity .2s ease-out;
opacity: 1;
}
2017-10-31 00:00:40 +01:00
}
2017-11-13 15:38:57 +01:00
// Creating popover::after element
2017-12-19 17:52:33 +01:00
&:after {
2017-11-13 15:38:57 +01:00
position: absolute;
top: -6px;
left: 50%;
opacity: 0;
padding: 4px 2px;
min-width: 80px;
font-size: 0.7em;
text-align: center;
color: $white;
background: $light-dark;
2017-12-31 12:19:27 +01:00
@include transition(opacity);
2017-11-13 15:38:57 +01:00
transform: translateX(-50%) translateY(-100%);
2017-12-23 09:43:23 +01:00
@include border-style();
border: 2px solid $primary;
2017-11-13 15:38:57 +01:00
}
2017-10-31 00:00:40 +01:00
}
// Popover positioning: left, right, top, bottom
2017-11-13 15:38:57 +01:00
[popover-left] {
2017-12-19 17:52:33 +01:00
&:before {
2017-11-13 15:38:57 +01:00
left: 0;
top: 50%;
margin-left: -12px;
2017-12-19 17:52:33 +01:00
transform: translateY(-50%) rotate(-90deg);
2017-11-13 15:38:57 +01:00
}
2017-10-31 00:00:40 +01:00
2017-12-19 17:52:33 +01:00
&:after {
2017-11-13 15:38:57 +01:00
content: attr(popover-left);
left: 0;
top: 50%;
margin-left: -8px;
transform: translateX(-100%) translateY(-50%);
}
2017-10-31 00:00:40 +01:00
}
2017-11-13 15:38:57 +01:00
[popover-right] {
2017-12-19 17:52:33 +01:00
&:before {
2017-11-13 15:38:57 +01:00
left: 100%;
top: 50%;
margin-left: 1px;
transform: translatey(-50%) rotate(90deg);
}
2017-10-31 00:00:40 +01:00
2017-12-19 17:52:33 +01:00
&:after {
2017-11-13 15:38:57 +01:00
content: attr(popover-right);
left: 100%;
top: 50%;
margin-left: 8px;
transform: translateX(0%) translateY(-50%);
}
2017-10-31 00:00:40 +01:00
}
2017-11-13 15:38:57 +01:00
[popover-top] {
2017-12-19 17:52:33 +01:00
&:before {
2017-11-13 15:38:57 +01:00
left: 50%;
}
2017-10-31 00:00:40 +01:00
2017-12-19 17:52:33 +01:00
&:after {
2017-11-13 15:38:57 +01:00
content: attr(popover-top);
left: 50%;
}
2017-10-31 00:00:40 +01:00
}
2017-11-13 15:38:57 +01:00
[popover-bottom] {
2017-12-19 17:52:33 +01:00
&:before {
2017-11-13 15:38:57 +01:00
top:100%;
margin-top: 8px;
transform: translateX(-50%) translatey(-100%) rotate(-180deg);
}
2017-10-31 00:00:40 +01:00
2017-12-19 17:52:33 +01:00
&:after {
2017-11-13 15:38:57 +01:00
content: attr(popover-bottom);
top: 100%;
margin-top: 8px;
transform: translateX(-50%) translateY(0%);
}
2017-10-31 00:00:40 +01:00
}