我尝试从谷歌地图切换到OSM,并尝试OpenLayers(快速入门示例(。 如果我使用托管版本,一切看起来都很好。但是,如果我下载 5.1.3 软件包并将其托管在我们的网络服务器上,则缩小按钮的标题已损坏。网址: http://www.canalcup-cam.de/maps.php
看起来好像使用了非 ASCII "-" ... 我试图找到设置按钮标题的代码,但没有成功。 网站的编码与此有关吗?我尝试了utf-8和Windows-1250。
问候 异质结
当我复制您的代码并链接到您的 ol 副本时.js我需要插入减号<meta charset="utf-8">
(它是 html−
而不是连字符(才能正确显示:
<head>
<meta charset="utf-8">
<link rel="stylesheet" href="https://cdn.rawgit.com/openlayers/openlayers.github.io/master/en/v5.1.3/css/ol.css" type="text/css">
<style>
.map {
height: 400px;
width: 100%;
}
</style>
<script src="http://www.canalcup-cam.de/inc/OpenLayers/v5.1.3/build/ol.js"></script>
<title>OpenLayers example</title>
</head>
但是使用 ol.js的 cdn 版本,它可以在没有元标记的情况下工作。 也许您的副本已以某种方式更改,但始终包含元标记仍然是很好的做法。
<head>
<link rel="stylesheet" href="https://cdn.rawgit.com/openlayers/openlayers.github.io/master/en/v5.1.3/css/ol.css" type="text/css">
<style>
.map {
height: 400px;
width: 100%;
}
</style>
<script src="https://cdn.rawgit.com/openlayers/openlayers.github.io/master/en/v5.1.3/build/ol.js"></script>
<title>OpenLayers example</title>
</head>
损坏的字符通常是由错误的编码引起的。有很多地方可能发生。在您的情况下,它位于元标记中。
您似乎喜欢逆流而上,因此您在网站上添加了元标记<meta charset="windows-1250">
。甚至没有5%的网站不再使用Latin-1/Windows-1252,世界正在向UTF-8融合 - 你也应该切换。