【Mars3d】关于locationBar等控件的css样式冲突处理问题

【Mars3d】关于locationBar等控件的css样式冲突处理问题

问题场景:

1.通过代码加载new mars3d.control.Zoom(或者通过地球map初始化配置 option.control = {加载放大缩小工具控件的时候,出现图标的样式冲突效果:

2.sceneModePicker, 二三维切换按钮也是,出现样式冲突效果,无法出现示例中的相关类似效果。

排查后发现是cesium本身的css文件问题导致的样式冲突。

根据开发教程的说明,这个文件是cesium原生css,说明这个问题是原生cesium有bug了导致的样式冲突。

解决方案:

1.学习Mars3d官网提供的示例和项目写的覆盖cesium的css

2.相关路径:src\components\mars-work\mars-map.vue

示例地址

git clone https://gitee.com/marsgis/mars3d-vue-example.git

项目地址:

git clone https://gitee.com/marsgis/mars3d-vue-project.git

相关的代码(已经写好覆盖了cesium原生的css效果):

<style lang="less">

/**cesium 工具按钮栏*/

.cesium-viewer-toolbar {

  top: auto !important;

  bottom: 35px !important;

  left: 12px !important;

  right: auto !important;

}

.cesium-toolbar-button img {

  height: 100%;

}

.cesium-viewer-toolbar > .cesium-toolbar-button,

.cesium-navigationHelpButton-wrapper,

.cesium-viewer-geocoderContainer {

  margin-bottom: 5px;

  float: left;

  clear: both;

  text-align: center;

}

.cesium-button {

  background-color: rgba(23, 49, 71, 0.7);

  color: #e6e6e6;

  fill: #e6e6e6;

  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3);

  line-height: 32px;

}

.cesium-button:hover {

  background-color: rgba(0, 138, 255, 0.7);

}

/**cesium 底图切换面板*/

.cesium-baseLayerPicker-dropDown {

  bottom: 0;

  left: 40px;

  max-height: 700px;

  margin-bottom: 5px;

  background-color: rgba(23, 49, 71, 0.7);

}

/**cesium 帮助面板*/

.cesium-navigation-help {

  top: auto;

  bottom: 0;

  left: 40px;

  transform-origin: left bottom;

  background: none;

  background-color: rgba(23, 49, 71, 0.8);

  .cesium-navigation-help-instructions {

    background: none;

  }

  .cesium-navigation-button {

    background: none;

  }

  .cesium-navigation-button-selected,

  .cesium-navigation-button-unselected:hover {

    background-color: rgba(23, 49, 71, 1);

  }

}

/**cesium 二维三维切换*/

.cesium-sceneModePicker-wrapper {

  width: auto;

}

.cesium-sceneModePicker-wrapper .cesium-sceneModePicker-dropDown-icon {

  float: right;

  margin: 0 3px;

}

/**cesium POI查询输入框*/

.cesium-viewer-geocoderContainer .search-results {

  left: 0;

  right: 40px;

  width: auto;

  z-index: 9999;

}

.cesium-geocoder-searchButton {

  background-color: rgba(23, 49, 71, 0.8);

}

.cesium-viewer-geocoderContainer .cesium-geocoder-input {

  background-color: rgba(63, 72, 84, 0.7);

}

.cesium-viewer-geocoderContainer .cesium-geocoder-input:focus {

  background-color: var(--mars-bg-base, rgba(63, 72, 84, 0.9));

}

.cesium-viewer-geocoderContainer .search-results {

  background-color: rgba(23, 49, 71, 0.8);

}

/**cesium info信息框*/

.cesium-infoBox {

  top: 50px;

  background: var(--mars-bg-base, rgba(63, 72, 84, 0.9));

}

.cesium-infoBox-title {

  background-color: rgba(23, 49, 71, 0.8);

}

/**cesium 任务栏的FPS信息*/

.cesium-performanceDisplay-defaultContainer {

  top: auto;

  bottom: 35px;

  right: 50px;

}

.cesium-performanceDisplay-ms,

.cesium-performanceDisplay-fps {

  color: #fff;

}

/**cesium tileset调试信息面板*/

.cesium-viewer-cesiumInspectorContainer {

  top: 10px;

  left: 10px;

  right: auto;

}

.cesium-cesiumInspector {

  background-color: rgba(23, 49, 71, 0.8);

}

/**覆盖mars3d内部控件的颜色等样式*/

.mars3d-compass .mars3d-compass-outer {

  fill: rgba(23, 49, 71, 0.8);

}

.mars3d-contextmenu-ul,

.mars3d-sub-menu {

  background-color: rgba(23, 49, 71, 0.8);

  > li > a:hover,

  > li > a:focus,

  > li > .active {

    background-color: var(--mars-hover-btn-bg, #3ea6ff);

  }

  > .active > a,

  > .active > a:hover,

  > .active > a:focus {

    background-color: var(--mars-hover-btn-bg, #3ea6ff);

  }

}

/* Popup样式*/

.mars3d-popup-color {

  color: var(--mars-text-color, #ffffff);

}

.mars3d-popup-background {

  background: var(--mars-bg-base, rgba(63, 72, 84, 0.9));

}

.mars3d-popup-content {

  margin: 15px;

}

.mars3d-popup-btn-custom {

  padding: 3px 10px;

  border: 1px solid #209ffd;

  background: #209ffd1c;

}

.mars3d-tooltip {

  color: var(--mars-text-color, #ffffff);

  background: var(--mars-bg-base, rgba(63, 72, 84, 0.9));

  border: 1px solid var(--mars-bg-base, rgba(63, 72, 84, 0.9));

}

.mars3d-tooltip-top:before {

  border-top-color: var(--mars-bg-base, rgba(23, 49, 71, 0.8));

}

.mars3d-tooltip-bottom:before {

  border-bottom-color: var(--mars-bg-base, rgba(23, 49, 71, 0.8));

}

.mars3d-tooltip-left:before {

  border-left-color: var(--mars-bg-base, rgba(23, 49, 71, 0.8));

}

.mars3d-tooltip-right:before {

  border-right-color: var(--mars-bg-base, rgba(23, 49, 71, 0.8));

}

/* all 中的html样式 */

.mars3d-template-titile {

  color: var(--mars-base-color);

  border-bottom: 1px solid var(--mars-hover-btn-bg);

  a {

    font-size: 16px;

    color: var(--mars-msg-title-color);

  }

}

.mars3d-template-content {

  label {

    padding-right: 6px;

  }

  input {

    color: var(--mars-text-color);

    background-color: transparent !important;

    padding: 4px 5px;

  }

  input::placeholder {

    color: #cdcdcd !important;

  }

  textarea {

    color: var(--mars-base-color);

    background-color: transparent !important;

    padding: 4px 5px;

  }

  textarea::placeholder {

    color: #cdcdcd !important;

  }

}

</style>

相关推荐

  1. Vue:多组件样式冲突问题解决

    2023-12-15 06:20:04       29 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-15 06:20:04       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-15 06:20:04       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-15 06:20:04       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-15 06:20:04       20 阅读

热门阅读

  1. 35、卷积算法总结

    2023-12-15 06:20:04       34 阅读
  2. redis在linux中安装部署

    2023-12-15 06:20:04       42 阅读
  3. Mybatis之缓存

    2023-12-15 06:20:04       34 阅读
  4. 【springboot】【easyexcel】excel文件读取

    2023-12-15 06:20:04       38 阅读
  5. Android 修改状态栏背景半透明显示

    2023-12-15 06:20:04       41 阅读
  6. Angular 2 学习笔记

    2023-12-15 06:20:04       37 阅读