2gis-maps
Version:
Interactive 2GIS maps API, based on Leaflet
142 lines (121 loc) • 3.18 kB
text/less
.leaflet-popup {
margin-bottom: 0;
}
.leaflet-popup-tip-container {
height: 0;
}
.leaflet-popup-tip {
display: none;
}
.leaflet-popup-content-wrapper {
overflow: hidden;
padding: 0;
min-width: 60px;
min-height: 50px;
border: 0;
border-radius: 3px;
background: none;
box-shadow: none;
color: #e6e6e6;
font-size: 14px;
transition: opacity ease-out .2s, max-height ease-out .2s, height ease-out .2s;
transform-origin: 50% 100%;
// Чтобы текст не заезжал под кнопку закрытия. Для не инлайновых боксов
// можно получить нужное поведение применяя к ним overflow:hidden или display:(inline-block|table) .
&:before {
float: right;
width: 30px;
// popupPadding + 1 , первая строчка текста уже среагирует на кнопку,
// но минимум проблем с не инлайновыми боксами
height: 17px;
content: '';
}
}
.leaflet-popup-content {
position: relative;
margin: 16px;
width: auto;
line-height: 1.4;
}
.leaflet-popup a {
outline: none;
}
.leaflet-popup-content p {
margin: 0;
}
.leaflet-popup-scrolled {
overflow: visible;
border: 0;
}
.leaflet-popup-inner {
position: relative;
z-index: 0;
}
.leaflet-popup_show_true {
transition: transform ease-in-out .2s, opacity ease-in-out .2s, height ease-out .2s;
transform: scale(1);
}
.leaflet-popup_show_false {
opacity: 0 ;
transition: all ease-in-out .1s;
transform: scale(.2);
}
/* Коллаут показался, но контент ещё не загрузился */
.leaflet-popup_preloader_true {
width: 384px;
height: 52px;
}
/* В коллауте ошибка вместо контента */
.leaflet-popup_error_true {
}
.leaflet-map-pane .leaflet-popup-tip-container {
position: absolute;
top: auto;
bottom: 0;
left: 50%;
margin-left: -29px;
width: 58px;
height: 47px;
background-repeat: no-repeat;
transform: translateY(47px);
pointer-events: none;
}
.leaflet-popup-tip {
display: none;
}
.leaflet-popup-tip-container_svg {
.notRepeatableBg('DGPopup__popupShadow', true);
background-position: 50% 95%;
background-size: 36px 12px;
}
.leaflet-container a.leaflet-popup-close-button {
position: absolute;
top: 3px;
right: 3px;
z-index: 1;
overflow: hidden;
padding: 0;
width: 30px;
height: 30px;
text-align: center;
font-weight: normal;
font-size: 18px;
line-height: 30px;
cursor: pointer;
.no-touch &:hover {
border-radius: 2px;
transition: all .2s;
}
&:active {
color: #777777;
}
&:after {
position: absolute;
top: -3px;
right: -5px;
z-index: 2;
width: 40px;
height: 40px;
content: '';
}
}