gpt4 book ai didi

css - CartoDB:信息窗口中的样式 block 被忽略。无法覆盖自定义样式

转载 作者:行者123 更新时间:2023-11-28 06:53:51 25 4
gpt4 key购买 nike

我正在尝试在 CartoDB Editor 中创建自定义信息窗口.来自docs , 应该可以使用 <style> block 以指定或覆盖默认样式。但似乎整个街区都被忽略了。当我查看 Chrome 开发工具时,我的样式根本不存在。它们不会被覆盖,它们只是不存在。不过,内联样式效果很好。

信息窗口弹出的标记:

<style type="text/css">
div.cartodb-popup.v2.custom {
background: #666;
}
div.cartodb-popup.v2.custom:before {
border-top: 14px solid #666;
}
div.cartodb-popup.v2.custom h4 {
color: #fff;
}
div.cartodb-popup.v2.custom p {
color: #ff0;
}
</style>

<div class="cartodb-popup v2 custom">
<a href="#close" class="cartodb-popup-close-button close">x</a>
<div class="cartodb-popup-content-wrapper">
<h4>{{boroname}}</h4>
<p>Borough code: {{borocode}}</p>
</div>
<div class="cartodb-popup-tip-container"></div>
</div>

知道我可能做错了什么吗?我已经尝试过使用和不使用 custom类,但我把它留在那儿,因为我认为一些额外的细节不会造成任何伤害。我很确定这个<style>方法在一年前就奏效了。

我可以使用内联样式来完成大部分样式设置,但这非常麻烦并且不适用于伪元素,例如小弹出箭头。

有什么方法可以在 Web 界面上执行此操作,还是我们需要将其托管在我们自己的服务器上以编辑 .js 脚本等?

这是我的 map :https://stekhn.cartodb.com/viz/a2534c80-87b0-11e5-a2ef-0e787de82d45/embed_map

最佳答案

上面的例子已经过时并且<style>不再允许信息窗口编辑器中的 block 。您只能在 CartoDB 前端编辑器中使用 CSS 内联样式。要完全控制信息窗口和工具提示外观,请使用 cartoDB.js .在此示例中,我将弹出窗口背景颜色更改为灰色:

<link rel="stylesheet" type="text/css" href="http://libs.cartocdn.com/cartodb.js/v3/3.15/themes/css/cartodb.css">
<script src="http://libs.cartocdn.com/cartodb.js/v3/3.15/cartodb.js"></script>

<style type="text/css">
div.cartodb-popup.v2.custom {
background: #666;
}

div.cartodb-popup.v2.custom:before {
border-top: 14px solid #666;
}

div.cartodb-popup.v2.custom h3,
div.cartodb-popup.v2.custom p {
color: #fff;
}

</style>

<section id="map"></section>

<script type="infowindow/html" id="template">
<div class="cartodb-popup v2 custom">
<a href="#close" class="cartodb-popup-close-button close">x</a>
<div class="cartodb-popup-content-wrapper">
<h3>{{name}}</h3>
<p>{{description}}</p>
</div>
<div class="cartodb-popup-tip-container"></div>
</div>
</script>

<script type="text/javascript">

cartodb.createVis('map', 'https://your-accout.cartodb.com/api/v2/viz/477bdfc0-8210-11e5-936b-0e787de82d45/viz.json', {
tiles_loader: true,
center_lat: 48.6,
center_lon: 11.4,
zoom: 7
})
.done(function(vis, layers) {

var subLayer = layers[1].getSubLayer(1);

// Select template from dom
subLayer.infowindow.set('template', $('#template').html());
});
</script>

关于css - CartoDB:信息窗口中的样式 block 被忽略。无法覆盖自定义样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33631672/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com