【问题标题】:SVG layer images do not display in Mobile Safari in portrait modeSVG 图层图像不会在 Mobile Safari 中以纵向模式显示
【发布时间】:2015-07-18 15:30:45
【问题描述】:

我正在构建一个包含多个静态图像 SVG 图层的地图。每个图层都有一个 maxResolution 集,因此它们只出现在某些缩放级别:

  var map = new ol.Map({
    target: 'map',
    layers: [
      new ol.layer.Image({
        source: first,
        maxResolution: 4
      }),
      new ol.layer.Image({
        source: second,
        maxResolution: 2
      }),
      new ol.layer.Image({
        source: third,
        maxResolution: 1
      }),
    ],
    view: view
  });

在我 Mac 上的 Safari 和 Chrome 中,这可以完美运行。

但是,在 MobileSafari 上,只有当我将手机旋转到水平模式时才会出现三层。

知道是什么导致了这个问题吗?

【问题讨论】:

  • 我的胃说这可能与分辨率有关。我在移动设备上遇到过这种问题。添加一些代码,将分辨率写在屏幕上,看看分辨率是否异常。
  • 刚刚试过。不幸的是,无论我是纵向还是横向,我都获得了相同的分辨率,所以我认为这已经过时了。

标签: javascript svg mobile-safari openlayers-3


【解决方案1】:

原来问题不在于图层/分辨率,而在于地图容器的大小。我使用 CSS 调整了大小:

html, body {
  height: 99%;
  width: 100%;
}

这解决了问题——它不喜欢 100% 的高度。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-17
    • 2015-01-30
    • 2022-06-15
    • 1970-01-01
    相关资源
    最近更新 更多