OpenLayers 无法设计 dragBox
OpenLayers cannot style dragBox
我将 Angular7/Typescript 与 OpenLayers 5 一起使用,并且我从 'ol/interaction';
添加了一个 DragBox
mapValues.drawObj = new DragBox({
class: 'myDragBox'
});
mapValues.map.addInteraction(mapValues.drawObj);
我已将样式添加到我的 scss 文件
.ol-myDragBox{
border-color: red;
border-width: 3px;
background-color: rgba(255,255,255,0.4);
}
没有显示样式...
我还尝试将这种样式和其他几种变体直接放在 "Style" 标签中的 HTML 中。
非常感谢任何帮助!
更新
根据评论,我将代码更改为...
mapValues.drawObj = new DragBox({
className: 'myDragBox'
});
mapValues.map.addInteraction(mapValues.drawObj);
.myDragBox {
background-color: rgba(255,255,255,0.4);
border-color: rgba(100,150,0,1);
}
...我仍然没有样式,但是所有 DragBox 事件都会触发。
更新
当我在开发人员工具中查看样式时,它看起来像这样...
.ol-dragbox[_ngcontent-c6]{
background-color: rgba(255,255,255,0.4) !important;
border-color: rgba(100,150,0,1) !important;
border-style: solid;
border-width: 3px;
}
如果我删除“[_ngcontent-c6]”样式开始工作...这是自动附加的内容。
我需要将“::ng-deep”添加到 css class 以便它可以到达它的封装内部。
例如...
::ng-deep .myDragBox{
background-color: rgba(255,255,255,0.3);
border: 1px solid red;
}
我将 Angular7/Typescript 与 OpenLayers 5 一起使用,并且我从 'ol/interaction';
添加了一个 DragBoxmapValues.drawObj = new DragBox({
class: 'myDragBox'
});
mapValues.map.addInteraction(mapValues.drawObj);
我已将样式添加到我的 scss 文件
.ol-myDragBox{
border-color: red;
border-width: 3px;
background-color: rgba(255,255,255,0.4);
}
没有显示样式...
我还尝试将这种样式和其他几种变体直接放在 "Style" 标签中的 HTML 中。
非常感谢任何帮助!
更新 根据评论,我将代码更改为...
mapValues.drawObj = new DragBox({
className: 'myDragBox'
});
mapValues.map.addInteraction(mapValues.drawObj);
.myDragBox {
background-color: rgba(255,255,255,0.4);
border-color: rgba(100,150,0,1);
}
...我仍然没有样式,但是所有 DragBox 事件都会触发。
更新 当我在开发人员工具中查看样式时,它看起来像这样...
.ol-dragbox[_ngcontent-c6]{
background-color: rgba(255,255,255,0.4) !important;
border-color: rgba(100,150,0,1) !important;
border-style: solid;
border-width: 3px;
}
如果我删除“[_ngcontent-c6]”样式开始工作...这是自动附加的内容。
我需要将“::ng-deep”添加到 css class 以便它可以到达它的封装内部。 例如...
::ng-deep .myDragBox{
background-color: rgba(255,255,255,0.3);
border: 1px solid red;
}