【发布时间】:2015-12-30 15:59:28
【问题描述】:
Google 地图不会显示在导航标签中。 它没有显示这个地方,但是当我点击地图时;在 google 中是正确的。
HTML:
<div class="tab-content">
<div role="tabpanel" class="tab-pane fade" id="locatie"><?php if ($object->hasLocation): ?>
<div>
<h2>Kaart</h2>
<div id="google-map"></div>
<h2>Street View</h2>
<div id="google-streetview"></div>
</div>
<?php endif; ?></div>
</div>
JS
(function($, exports) {
'use strict';
var GoogleMap = exports.GoogleMap = function(options) {
this.map = null;
this.markers = [];
this.bounds = null;
this.info = null;
this.options = $.extend({
container: '#google-map',
mapContainer: null,
map: {}
}, options || {});
this.$container = null;
};
CSS
.single-post-tst {
.entry-content {
width: 100%;
margin: 2% 0 10%;
display: inline-block;
p {
font-size: 16px;
}
}
.container-content-single {
ul, ol {
margin: 0 0 1.5em 0;
}
.nav-tabs {
border: 1px solid #ddd;
li {
margin-bottom: 0;
border-right: 1px solid #ddd;
}
li:last-child {
border-right: none;
}
li a {
border-radius: 0;
line-height: 2em;
margin-right: 0;
}
li a:hover {
background-color: #F29902;
color: #fff;
}
li.active > a {
padding-bottom: 12px;
}
a.nav-link.active {
background-color: #F29902;
color: #fff;
}
}
.nav-tabs>li.active>a, .nav-tabs>li.active>a:focus, .nav-tabs>li.active>a:hover {
border: none;
background-color: #F29902;
color: #fff;
}
}
}
#google-map,
#google-streetview {width:100%; height:500px;}
我认为问题在于 JS 中的这一行:
container: '#google-map',
当我把地图从标签中拿出来时,它工作正常。 但我找不到任何解决方案来在选项卡中正确显示地图。
它现在显示但不是全宽,我将它添加到 CSS:
.tab-content.tab-pane,
.tab-pane {
/* display: none; */
display: block;
visibility: hidden;
position: absolute;
}
.tab-content.active,
.tab-content .tab-pane.active,
.tab-pane.active {
/* display: block; */
visibility: visible;
position: static;
}
当我说宽度:100%;它没有全宽
【问题讨论】:
-
可能与此问题相同,也许? stackoverflow.com/questions/28404179/…
-
这可能是由于 div 及其父级没有所需的宽度和高度。你能分享你正在使用的css吗? this question 可能有用。
-
@user5325596 我将css添加到第一篇文章
-
@QuestionMarks 我只想在一个标签中显示它。
标签: javascript html google-maps