diff --git a/lib/OpenLayers/Map.js b/lib/OpenLayers/Map.js index 68b4ccfd28..96d329a1f8 100644 --- a/lib/OpenLayers/Map.js +++ b/lib/OpenLayers/Map.js @@ -483,8 +483,10 @@ OpenLayers.Map.prototype = { control.setMap(this); var div = control.draw(px); if (div) { - // only elements without parents should be appended to the viewport - if(!div.parentNode) { + // Only elements without parents should be appended to the viewport. + // In IE, even elements without parents are given a parent node + // of type 11 (DOCUMENT_FRAGMENT_NODE). + if(!div.parentNode || (div.parentNode.nodeType == 11)) { div.style.zIndex = this.Z_INDEX_BASE['Control'] + this.controls.length; this.viewPortDiv.appendChild( div );