Любой, кто имеет какие-либо идеи о том, что вызывает этот странный сбой с компонентами интерфейса Google Maps, будьте очень благодарны за вас!
![enter image description here]()
карта создается с помощью:
var options = {
zoom: <?php echo $this->zoom ?>,
center: new google.maps.LatLng(<?php echo $this->centre_lat ?>, <?php echo $this->centre_lon ?>),
mapTypeControl: false,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById('map_canvas'), options);
а сбой - тот же, даже без маркеров.
Ответ 1
Мы столкнулись с той же проблемой. Конструктор css использовал этот стиль:
style.css
img {max-width: 100%; }
Вместо отключения управления масштабированием мы устранили проблему, переопределив стиль img для элементов map_canvas следующим образом:
style.css
#map_canvas img { max-width: none; }
Теперь управление масштабированием отображается правильно.
Настройка "img max-width: 100%" - это метод, используемый в дизайне адаптивного/жидкого веб-сайта, чтобы изображения изменялись пропорционально при изменении размера браузера. По-видимому, некоторые сетки css начали устанавливать этот стиль по умолчанию. Подробнее о жидких изображениях здесь: http://www.alistapart.com/articles/fluid-images/ Не уверен, почему это противоречит карте google...
Ответ 2
С последней версией google maps api вам нужно это:
<style>
.gm-style img { max-width: none; }
.gm-style label { width: auto; display: inline; }
</style>
Ответ 3
Похож на проблему с управлением зумом. Попробуйте добавить zoomControl:false
к вашим параметрам.
На самом деле кажется, что обычный слайдер масштабирования расположен слева от страницы (используйте Firebug > Inspect Element). Может быть конфликт CSS?
Ответ 4
Ну, я получил исправление для этого:
На вашем CSS вы добавили что-то вроде:
img {max-width: 100%; height: auto;}
попробуйте сделать его глобальным, и он должен исправить вас:)
Ответ 5
Это сработало для меня:
#map img { max-width: none !important; } (from Patrick answer)
атрибут "! important" обязательно переопределит любой другой стиль, #map - это идентификатор, назначенный при объявлении нового объекта. Gmaps:
<script>
map = new GMaps({
div: '#map', <- your id
lat: *******,
lng: *******,
scrollwheel: false,
panControl: true,
....
...
</script>
Ответ 6
, если вы используете функцию сетки сетки Dreamweaver, настроенная по умолчанию, должна выглядеть так:
img, object, embed, video {
max-width: 100%;
}
/* IE 6 does not support max-width so default to width 100% */
.ie6 img {
width:100%;
}
Попробуйте следующее:
object, embed, video {
max-width: 100%;
}
#map_canvas img { max-width: none; }
/* IE 6 does not support max-width so default to width 100% */
.ie6 img {
width:100%;
}
просто замените код как есть.
Ответ 7
Bootstrap (начиная с версии 2.3.2) беспорядок с изображениями так же, как и в принятом ответе.
На самом деле, я подозреваю, что дизайн, используемый на веб-сайте Haroldo, использует Bootstrap.
Я просто публикую это, потому что никто не упомянул Bootstrap, и кто-то может искать решение, зависящее от Bootstrap.
Ответ 8
Я столкнулся с этой проблемой на моем сайте Square Space. У меня не было доступа к таблице стилей CSS. Поскольку вы встраиваете html-документ, вы можете просто использовать встроенный CSS для устранения проблемы. Я изменил стиль контейнера вместо того, чтобы изменить сайт (что я не мог сделать). Вот что я сделал:
<style>
html, body, #map-canvas {
height: 600px;
width: 100%;
margin: 0px;
padding: 0px
}
#map-canvas img {max-width: none;}
</style>