diff --git a/frontend-js/src/main/css/global.css b/frontend-js/src/main/css/global.css
index 1255f3f4e6544104805f43a2d2fadfa971044a6b..383e60080b5449ac0d64c141ea92f93be976115b 100644
--- a/frontend-js/src/main/css/global.css
+++ b/frontend-js/src/main/css/global.css
@@ -155,6 +155,15 @@
     font-weight: 900;
 }
 
+.minerva-search-result-icon {
+    float: left;
+    margin: 0 10px;
+}
+
+.minerva-clickable {
+    cursor: pointer;
+}
+
 .input-field {
     background-color: #21BDF1;
     color: #ffffff;
diff --git a/frontend-js/src/main/js/gui/leftPanel/AbstractDbPanel.js b/frontend-js/src/main/js/gui/leftPanel/AbstractDbPanel.js
index 75fab272c2091707b442a1a032fe9e8d4911ae7d..cc7c332a7fa48b3344edf93283efdce778d23a9b 100644
--- a/frontend-js/src/main/js/gui/leftPanel/AbstractDbPanel.js
+++ b/frontend-js/src/main/js/gui/leftPanel/AbstractDbPanel.js
@@ -228,10 +228,10 @@ AbstractDbPanel.prototype.refreshSearchResults = function () {
     promises.push(searchDb.getElementsByQuery(queries[i]));
   }
   return Promise.all(promises).then(function (results) {
-    return Promise.each(queries, function(query, index){
+    return Promise.each(queries, function (query, index) {
       return self.addResultTab(query, results[index]);
     });
-  }).then(function(){
+  }).then(function () {
     self.onresize();
   });
 };
@@ -348,7 +348,34 @@ AbstractDbPanel.prototype.createTargetRow = function (target, icon) {
   var i;
   if (target.getTargetElements().length > 0) {
     var submapAddedIds = [];
-    iconColumn.appendChild(guiUtils.createIcon(icon));
+    var elements = target.getTargetElements();
+    for (i = 0; i < elements.length; i++) {
+      var elementId = elements[i].getModelId();
+      if (elementId !== self.getMap().getId() && !submapAddedIds[elementId]) {
+        submaps.push(elementId);
+        submapAddedIds[elementId] = true;
+      }
+    }
+
+    iconColumn.appendChild(guiUtils.createIcon(icon, function () {
+      var maps = submaps.concat([self.getMap().getId()]);
+      var promises = [];
+      for (var j = 0; j < maps.length; j++) {
+        var submap = self.getMap().getSubmapById(maps[j]);
+        var submapElements = [];
+        for (var k = 0; k < elements.length; k++) {
+          if (elements[k].getModelId() === submap.getId()) {
+            submapElements.push(elements[k]);
+          }
+        }
+        if (submap.isInitialized()) {
+          promises.push(submap.getModel().getByIdentifiedElements(submapElements, false).then(function (fetchedElements) {
+            return self.getMap().getSubmapById(fetchedElements[0].getModelId()).fitBounds(fetchedElements);
+          }));
+        }
+      }
+      return Promise.all(promises);
+    }));
     var checkbox = document.createElement('input');
     checkbox.type = "checkbox";
     checkbox.checked = target.isVisible();
@@ -358,14 +385,6 @@ AbstractDbPanel.prototype.createTargetRow = function (target, icon) {
     };
 
     iconColumn.appendChild(checkbox);
-    var elements = target.getTargetElements();
-    for (i = 0; i < elements.length; i++) {
-      var elementId = elements[i].getModelId();
-      if (elementId !== self.getMap().getId() && !submapAddedIds[elementId]) {
-        submaps.push(elementId);
-        submapAddedIds[elementId] = true;
-      }
-    }
   }
 
   var descColumn = document.createElement("td");
diff --git a/frontend-js/src/main/js/gui/leftPanel/GuiUtils.js b/frontend-js/src/main/js/gui/leftPanel/GuiUtils.js
index 58e06c3634af2451a41ad716d55eb78eb709dabe..6ccfa96199b7995d766bcfafb57bb686d06a2e6a 100644
--- a/frontend-js/src/main/js/gui/leftPanel/GuiUtils.js
+++ b/frontend-js/src/main/js/gui/leftPanel/GuiUtils.js
@@ -510,11 +510,11 @@ GuiUtils.prototype.createIcon = function (icon, onclickFunction) {
   if (icon !== undefined && icon !== null) {
     var img = document.createElement("img");
     img.src = GuiConnector.getImgPrefix() + icon;
-    img.style.float = "left";
-    img.hspace = 5;
     if (onclickFunction !== undefined) {
       img.onclick = onclickFunction;
-      img.style.cursor = "pointer";
+      img.className = "minerva-search-result-icon minerva-clickable";
+    } else {
+      img.className = "minerva-search-result-icon";
     }
     result.appendChild(img);
   }