Leaflet openstreetmap加载,但不会出现

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Leaflet openstreetmap加载,但不会出现相关的知识,希望对你有一定的参考价值。

我尝试制作传单地图并添加Openstreetmap作为背景地图。但如果我加载地图,则不会显示任何内容。检查firefox网络分析成功加载所有必需的磁贴,但它们不显示。

我的html代码:

<!doctype html>
<html lang="en">
<head>
    <meta charset="utf-8">

    <link rel="stylesheet" href="https://unpkg.com/leaflet@1.4.0/dist/leaflet.css" integrity="sha512-puBpdR0798OZvTTbP4A8Ix/l+A4dHDD0DGqYW6RQ+9jxkRFclaxxQb/SJAWZfWAkuyeQUytO7+7N4QKrDh+drA==" crossorigin=""/>
    <script src="https://unpkg.com/leaflet@1.4.0/dist/leaflet.js" integrity="sha512-QVftwZFqvtRNi0ZyCtsznlKSWOStnDORoefr1enyq5mVL4tmKB3S/EnC3rRJcxCPavG10IcrVGSmPh6Qw5lwrg==" crossorigin=""></script>

    <link rel="stylesheet" href="main.css">

    <title>title</title>
</head>
<body>
    <div id="map">
    </div>
    <div id="logo">
        <!--- a logo will appear here --->
    </div>
    <script src="map.js"></script>
</body>

我的javascript代码:

var map = L.map('map', {
    center: [51.505, -0.09],
    zoom: 13
});

var osm = new L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png', {
    attribution: '&copy; <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'
});
osm.addTo(map);

div“map”的z-index比“logo”高,所以这不应该是问题。

答案

map style在哪里?

您应该为地图指定高度和宽度以进行渲染

<div id="map" style="width: 600px; height: 400px;">

Demo

以上是关于Leaflet openstreetmap加载,但不会出现的主要内容,如果未能解决你的问题,请参考以下文章

Ionic 4 Leaflet Map不适用于部署,但适用于离子服务--devapp

将 MSSQL 中用于 Web 映射(Leaflet、Openlayer、OpenStreetMaps、GoogleAPI 等)的投影更改为 WSG48 或任何其他格式

【可视化】python地图可视化_Folium

从 openstreetmap 中删除设施名称

在 Openstreet 地图上移动标记 - Leaflet API

esri-leaflet入门教程- 动态要素加载