Bob*_*dan 11 google-maps-api-3 twitter-bootstrap-3
我正在尝试将google maps javascript API v3实现到Bootstrap 3.0网站,该网站正在利用bootstrap 3.0"carousel"基本主题.
问题是<div id="map-canvas"></div>如果我试图将它包含在任何其他div或bootstrap 3样式内部(例如内部),则不会在我的页面上呈现<div class="col-xs-6"></div>.但是,只要它不包含在另一个div中,它就会呈现.
我找到了一个推荐此修复的注释,该注释指示使用以下代码将google-map-canvas类添加到map-canvas div:
.google-map-canvas,
.google-map-canvas * { .box-sizing(content-box); }
Run Code Online (Sandbox Code Playgroud)
我已将此代码添加到bootstrap.min.css然后将div更改为<div class="google-map-canvas" id="map-canvas"></div>但如果我将其包含在bootstrap 3样式所需的任何其他div中,则仍然无法呈现.
我需要将此地图放在我的联系页面的右半部分,左边的联系表格包含该页面.任何关于如何解决这个问题的建议表示赞赏.
以下是我的测试代码:
JAVASCRIPT(在"base.html"上):
{% if on_contactpage %}
<style type="text/css">
html { height: 100% }
body { height: 100%; margin: 0; padding: 0 }
#map-canvas { height: 100% }
</style>
<script type="text/javascript"
src="https://maps.googleapis.com/maps/api/js?key=MY_API_KEY&sensor=false">
</script>
<script type="text/javascript">
function initialize() {
var mapOptions = {
center: new google.maps.LatLng(-34.397, 150.644),
zoom: 8,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map-canvas"),
mapOptions);
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>
{% endif %}
Run Code Online (Sandbox Code Playgroud)
HTML:
<div class="row">
<div class="col-xs-6">
<h2> contact form goes here</h2>
</div>
<div class="col-xs-6">
<div class="google-map-canvas" id="map-canvas">
</div>
<div class="col-xs-6">
<h2>Hong Kong</h2>
<address>
<strong>HK Business Address</strong><br>
100 Business Address<br>
Kowloon<br>
Hong Kong<br>
Hong Kong<br>
Zip Code N/A<br>
<abbr title="Phone">P:</abbr> 01234 567 890
</address>
</div>
<div class="col-xs-6">
<h2>Shenzhen, P.R.C.</h2>
<address>
<strong>SZ Business Address</strong><br>
100 Business Address<br>
Futian District<br>
<br>
Shenzhen, Guangdong<br>
518000<br>
<abbr title="Phone">P:</abbr> 01234 567 890
</address>
</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
Zim*_*Zim 29
由于map-canvas它包含在其他几个容器(html,body,row,col-xs-6)中,你需要设置它的高度(以像素为单位).
#map-canvas {
width:100%;
height:500px;
}
Run Code Online (Sandbox Code Playgroud)
..或将所有map-canvas容器设置为height:100%..
html, body, .row, .col-xs-6 { height: 100% }
Run Code Online (Sandbox Code Playgroud)
您可以在.row中指定包含该ID的ID map-canvas,然后将其用于CSS特性...
html, body, #myrowid, #myrowid .col-xs-6 { height: 100% }
Run Code Online (Sandbox Code Playgroud)
以下是Bootply的一个工作示例:http://bootply.com/77513
| 归档时间: |
|
| 查看次数: |
38167 次 |
| 最近记录: |