View padding

使用 View 的 padding 属性可以使视图中心、范围限定在全幅的一个子区域。当将界面元素或者半透明内容放到视图局部范围的顶层时,padding 将特别有用。

这个示例显示了如何使用 MapView 的 padding 属性。

程序完整源代码:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="initial-scale=1,maximum-scale=1,user-scalable=no">
  <title>View padding - 4.5</title>
  <style>
    html,
    body,
    #viewDiv {
      padding: 0;
      margin: 0;
      height: 100%;
      width: 100%;
    }

    #sidebar {
      z-index: 99;
      position: absolute;
      top: 0;
      right: 0;
      height: 100%;
      background: rgba(0, 0, 0, 0.5);
      width: 320px;
    }

    #text {
      color: white;
      padding: 3%;
    }
  </style>
  <link rel="stylesheet" href="https://js.arcgis.com/4.5/esri/css/main.css">
  <script src="https://js.arcgis.com/4.5/"></script>
  <script>
    require([
      "esri/Map",
      "esri/views/MapView",
      "dojo/domReady!"
    ], function(
      Map,
      MapView
    ) {

      var map = new Map({
        basemap: "topo"
      });

      // 创建视图,并在右边设置 320px 的 padding 区域
      var view = new MapView({
        container: "viewDiv",
        map: map,
        center: [-74.045459, 40.690083], 
        zoom: 16,
        padding: {
          right: 320 // 和 #sidebar 元素的宽度一样
        }
      });

    });
  </script>
</head>

<body>
  <div id="viewDiv">
    <div id="sidebar">
      <div id="text">
        <h1>自由岛</h1>
        <p>使用 View 的 padding 属性可以使视图中心、范围限定在全幅的一个子区域。</p>
        <p>尝试改变窗口大小,你或许会有更深刻的了解。</p>
      </div>
    </div>
  </div>
</body>
</html>

程序执行效果:

沙箱地址:https://developers.arcgis.com/javascript/latest/sample-code/sandbox/index.html?sample=view-padding

(完)

results matching ""

    No results matching ""