【问题标题】:how to add a gradient over a leaflet map?如何在传单地图上添加渐变?
【发布时间】:2017-01-13 05:27:45
【问题描述】:

我正在尝试在传单地图上添加渐变,该渐变将从白色渐变为透明并部分遮盖它。

使用带有 CSS 的常规渐变作为背景使渐变仅在地图重新加载时出现。所以我尝试使用这个问题的公认答案将渐变放在“前景”中:Is there a foreground equivalent to background-image in css?

这仍然不起作用 - 地图仍然位于它上面。谁能想到一种方法来做到这一点?谢谢。

<style>
      #map-id {
        height: 100%;
      width: 100%;
      position: absolute;
      }
      html,body{margin: 0; padding: 0}

      #map-id:before {
      position: absolute;
      content: '';
      height: 100%;
      width: 100%;
        background: linear-gradient(to right, rgba(0, 0, 0, 1), rgba(0, 0, 0, 0));
      pointer-events: none;
      }


    </style>


    <div id="map-id">
      <script type="text/javascript" src="{% static "js/map.js" %}"></script>
    </div> 

【问题讨论】:

    标签: html css leaflet gradient


    【解决方案1】:

    你应该在前面的内容块中添加一个 z-index 属性

    供参考的代码笔:http://codepen.io/hkadyanji/pen/bwNLKK

    z-index: 999; /* adding this worked for me */
    

    截图:

    编辑

    添加了文本覆盖实现。

    【讨论】:

    • 谢谢。您知道为什么相同的解决方案不适用于我想覆盖在地图上的文本吗?我正在尝试将白色文本放在左侧,但似乎无法显示。我正在使用 h1:before{ position: absolute;内容: '';高度:100%;宽度:100%;白颜色;指针事件:无; z指数:999;不想为此提出新问题,因为它几乎相同......
    • @DavidJ。我已经编辑了答案以反映文本覆盖,我还编辑了 codepen
    • 感谢您的帮助
    • @DavidJ。我已经编辑了答案以反映文本覆盖,并且我还编辑了 codepen。我认为为什么你的实现不起作用的解释是对 h1 的伪类进行样式化,而不是对 h1 本身进行样式化。为了使您的解决方案起作用,您可以将其作为 h1:before{ position: absolute;内容:'标题内容-这里';高度:100%;宽度:100%;白颜色;指针事件:无; z 指数:999; }
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-03-06
    • 1970-01-01
    • 2016-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多