0

donc je veux le bouton qui me laisse choisir satellite et hybride pour rester ouvert et vu, mais dès que la carte se charge, la couche de carte va sur le bouton. Je peux voir le bouton est toujours là quand je me déplace soudainement ou dézoomer où la carte affiche le bouton apparaît pour une seconde aussi sur les outils de développement que je peux voir. J'ai joué avec z index et quelques astuces css, rien ne semble fonctionner. Au-dessous de la ligne rouge se trouve la div contenant le bouton. enter image description hereCarte ui-foliaire angulaire Carte, option hybride satellite passant sous la carte?

utilisant "angulaire": "1.5.9" "feuillet": "^ 1.0.3" "notice-omnivore": "^ 0.3.4" "leaflet.markercluster": "^ 1.0.4", "ui-brochure": "^ 1.0.3"

constructor(leafletData, siMapUtils, $rootScope, $log, siMapRam, $mdSidenav) { 
 
    "ngInject"; 
 

 
    this.name  = 'map'; 
 
    this.loading = false; 
 
    this.map  = {}; 
 
    this.showNotification = false; 
 
    this.mapId = 'map-dashboard'; 
 

 
    this.leafletData = leafletData; 
 
    this.siMapUtils = siMapUtils; 
 
    this.siMapRam = siMapRam; 
 
    this.$rootScope = $rootScope 
 
    this.$log  = $log; 
 
    this.$mdSidenav = $mdSidenav; 
 

 
    this.defaulLayerName = 'Hybrid', 
 
    this.defaultLayerUrl = 'http:***********.png', 
 
    this.layersType  = 'xyz', 
 
    this.xyzLayerName = 'Satellite', 
 
    this.xyzLayerUrl  = 'http://*********'; 
 

 
    } 
 

 
    $onInit =() => { 
 
    this.initMap(); 
 

 
    this.map = { 
 
     options:{}, 
 
     layers:{ 
 
     baselayers: { 
 
      defaultLayer: { name: this.defaulLayerName, url: this.defaultLayerUrl, type: this.layersType,layerOptions:{maxZoom:21 , maxNativeZoom: 18} }, 
 
      xyz: { name: this.xyzLayerName, url: this.xyzLayerUrl, type: this.layersType, layerOptions:{maxZoom: 21, maxNativeZoom: 17} } 
 
     }, 
 
      overlays: {} 
 
     }, 
 
     center:{ lat: this.loadData.map.latitude, lng: this.loadData.map.longitude, zoom: this.loadData.map.zoomLevel | 1} 
 
    } 
 
    } 
 

 
    toggleEvents =() => { 
 
    this.$mdSidenav('right').toggle(); 
 
    } 
 

 
    initMap =() => { 
 
    var self = this; 
 

 
    //save data in ram service to pull elsewhere (like in search) 
 
    this.siMapRam.saveAssets(this.loadData.assets); 
 
    
 
    let markersGroup = this.siMapUtils.buildMarkerLayer(this.loadData.assets); 
 

 
    this.leafletData.getMap(this.mapId).then(function(map) { 
 
     //coordinates = document.getElementById('coordinates'); 
 
     
 
     /*if(self.previousLayer != null){ 
 
      map.removeLayer(self.previousLayer); 
 
     }*/ 
 
     map.options.minZoom = 3; //change to constant 
 
     map.options.maxZoom = 21; //change to constant 
 
     
 
     //mapDet = map;//? 
 
     //build marker layer 
 
     map.addLayer(markersGroup); 
 

 
     //_PL = markersGroup; 
 
     
 
     /*map.on('baselayerchange', function (event) { 
 
       _rs.$broadcast('baselayerchange', { layerName: event.name }); 
 
     });*/ 
 
    }, (err) => { 
 
     self.$log.error(`error fetching map during initialization`) 
 
    }). 
 
    then(function(){ 
 
     self.$log.info('done loading markers ...'); 
 
     //getLegend(); 
 
    }, (err) => { 
 
     self.$log.error(`error initializing map: ${err.message}`); 
 
    }); 
 
    } 
 
}
.angular-leaflet-map{ 
 
    z-index:0; 
 
} 
 

 

 
.leaflet-top, .leaflet-bottom { 
 
    z-index: 1000 !important; 
 
    position: relative; 
 
} 
 

 
.map-wrapper { 
 
    position: relative; 
 
} 
 

 
.marker { 
 
    background-color: black; 
 
    line-height: 1; 
 
    max-height: 48px; 
 
    max-width: 48px; 
 
    border: solid; 
 
    border-width: 6px; 
 
    border-radius: 100px; 
 
} 
 

 
.marker-dot { 
 
    background-color: black; 
 
    height: 15px; 
 
    max-width: 15px; 
 
    border-radius: 100px; 
 
    left: 22px; 
 
    position: absolute; 
 
    bottom: -85px; 
 
    border: solid; 
 
    border-color: #F5F5F5; 
 
    border-width: 2px; 
 
} 
 

 
.icon-badge { 
 
    display: block; 
 
    position: absolute; 
 
    top: -11px; 
 
    right: -21px; 
 
    line-height: 24px; 
 
    height: 25px; 
 
    max-width: 13px; 
 
    padding: 0 5px; 
 
    font-family: Arial, sans-serif; 
 
    color: white !important; 
 
    text-shadow: 0 1px rgba(0, 0, 0, 0.25); 
 
    border: 1px solid; 
 
    border-radius: 10px; 
 
    -webkit-box-shadow: inset 0 1px rgba(255, 255, 255, 0.3), 0 1px 1px rgba(0, 0, 0, 0.08); 
 
    box-shadow: inset 0 1px rgba(255, 255, 255, 0.3), 0 1px 1px rgba(0, 0, 0, 0.08); 
 
    text-align: center; 
 
    z-index: 2; 
 
} 
 

 
.button-icon { 
 
    margin: auto 3px auto 0; 
 
} 
 

 
.auto-overflow { 
 
    overflow: auto; 
 
} 
 

 
.bottom-right-filter { 
 
    position: absolute; 
 
    bottom: 8px; 
 
    right: 8px; 
 
    z-index: 5; 
 
} 
 

 
.bottom-left-layer { 
 
    position: absolute; 
 
    color: $dark-font; 
 
    bottom: 8px; 
 
    left: 8px; 
 
    z-index: 5; 
 
} 
 

 
.filter-button-background { 
 
    background-color: white !important; 
 
} 
 

 
.top-left-button-margin { 
 
    margin-top: 8px; 
 
} 
 

 
.search-controller-layout { 
 
    position: absolute; 
 
} 
 

 
.search-autocomplete { 
 
    width: 300px; 
 
    border-radius: 0; 
 
} 
 

 

 
.search-filter{ 
 
    background-color: white; 
 
    margin-left:10px; 
 

 
    & > md-autocomplete { 
 
    & > md-autocomplete-wrap { 
 
     box-shadow: none; 
 
    } 
 
    } 
 
} 
 

 
#dashboard-ts{ 
 
    & > md-select { 
 
    & > md-select-value{ 
 
     color: $dark-font; 
 
    } 
 
    } 
 
} 
 

 

 
.autocomplete-asset-name { 
 
    font-size: x-large; 
 
    color: black; 
 
} 
 

 
.map-top-right-ctrl { 
 
    position: absolute; 
 
    top: 8px; 
 
    right: 8px; 
 
    z-index: 5; 
 
} 
 

 
.status-legend { 
 
    background-color: #FAFAFA; 
 
    padding-left: 5px; 
 
    padding-right: 10px; 
 
} 
 

 

 

 
.leaflet-top{ 
 
    z-index: 5; 
 
} 
 

 
.leaflet-control-attribution { 
 
    display: none; 
 
} 
 

 

 
.leaflet-control-zoom { 
 
    position: absolute; 
 
    top: 40vh; 
 
    margin-left:10px !important; 
 
} 
 

 
.map-wrapper { 
 
    &#dashboard { 
 
    height: 100vh; 
 
    width: 100%; 
 
    } 
 
    &#asset-detail { 
 
    height: 200px; 
 
    width: 100%; 
 
    } 
 
    &#asset-location { 
 
    height: 60vh; 
 
    width: 100%; 
 
    } 
 
} 
 

 

 
.leaflet-top, .leaflet-bottom { 
 
    z-index: 10 !important; 
 
} 
 

 

 

 

 

 
.legend { 
 
    padding: 6px 8px; 
 
    font: 14px/16px Arial, Helvetica, sans-serif; 
 
    box-shadow: 0 0 15px rgba(0,0,0,0.2); 
 
    background: rgba(255,255,255, 0.9); 
 
    line-height: 18px; 
 
    border-radius: 5px; 
 
    color: #555; 
 
    width:100%; 
 

 
    i{ 
 
    color: #777; 
 
    width: 18px; 
 
    height: 18px; 
 
    float: left; 
 
    margin-right: 8px; 
 
    opacity: 0.7; 
 
    } 
 
} 
 

 
.leaflet-draw-toolbar a { 
 
    background-image: url('/content/png/spritesheet.png'); 
 
    background-repeat: no-repeat; 
 
} 
 

 
.leaflet-control-layers-toggle { 
 
    background-image: url('/content/png/layers.png'); 
 
    width: 36px; 
 
    height: 36px; 
 
    bottom: 25px; 
 
} 
 
.leaflet-retina .leaflet-control-layers-toggle { 
 
    background-image: url('/content/png/layers-2x.png'); 
 
    background-size: 26px 26px; 
 
    bottom: 25px; 
 
} 
 

 

 
.leaflet-right .leaflet-control { 
 
    float: right; 
 
    top: 40vh; 
 
    font: 14px/16px Arial, Helvetica, sans-serif; 
 
    color: #555; 
 
} 
 

 
.leaflet-draw-toolbar{ 
 
    margin-top: 5vh; 
 
} 
 

 
.cursorCardContent{ 
 
    background-color: white; 
 
    color: black; 
 
    width: 350px; 
 

 
} 
 

 
.cursorCardStyle{ 
 
    bottom: 35px; 
 
    right: 15px; 
 
    box-shadow: 2px 2px 5px #999 
 
} 
 

 
.cursorCardTitles{ 
 
    margin: 6px; 
 
    font-weight: bold; 
 
} 
 

 
.anchorsStyle{ 
 
    height: 100px; 
 
    width: 350px; 
 
    margin: 6px ; 
 
    overflow-x: hidden; 
 
    overflow-y: inherit; 
 
} 
 

 
.leaflet-bottom-card { 
 
    position: absolute; 
 
    z-index: 10; 
 
} 
 

 

 

 

 
/* Desktops and laptops ----------- */ 
 
@media only screen 
 
and (min-width : 1224px) { 
 
    /* Styles */ 
 

 
    .dg-modal{ 
 
    width:650px !important; 
 
    } 
 
} 
 

 

 
@media only screen 
 
    and (max-width:350px) 
 
    and (min-width:320px){ 
 
    .search-autocomplete{ 
 
    width:246px; 
 
    } 
 
} 
 

 
@media only screen 
 
and (min-width:350px) 
 
and (max-width:360px){ 
 
    .search-autocomplete{ 
 
    width:287px; 
 
    } 
 
} 
 

 
.zoomLevel{ 
 
    margin-left: 10px; 
 
} 
 

 
.updateLocationMap{ 
 
    width: 600px; 
 
    height: 600px; 
 
} 
 

 
.selectdemoSelectHeader .demo-header-searchbox { 
 
    border: none; 
 
    outline: none; 
 
    height: 48px; 
 
    width: 222px; 
 
    padding: 0; 
 
    margin-left: 5px; 
 
} 
 
.selectdemoSelectHeader .demo-select-header { 
 
    cursor: pointer; 
 
    width: 222px; 
 
    margin-left: 5px; 
 
} 
 

 
#tenantSelector{ 
 
    display: flex; 
 
    margin: 8px 3px 9px 3px !important; 
 
} 
 

 
.alert-icon { 
 
    height: 150px; 
 
    width: 150px; 
 
}

Répondre

0

.leaflet-top, .leaflet-bottom { 
 
    z-index: 10 !important; 
 
}

En supprimant cela a résolu le problème, cet index z couvrait l'icône zindex.