From fbd6eabd66746d4287beb400e6467288251ca111 Mon Sep 17 00:00:00 2001
From: 徐旺旺 <11530253@qq.com>
Date: 星期二, 09 三月 2021 08:59:38 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
src/conf/TDT.js | 4
src/main.js | 1
src/components/LayerController/modules/LcBaseMap.vue | 10
src/components/panel/ToolBoxPanel.vue | 195 +++++++++++++++---
src/conf/MapConfig.js | 1
package.json | 4
src/components/plugin/Leaflet.GridLayer.FadeOut.js | 76 +++++++
src/views/MapTemplate.vue | 64 +++---
src/components/panel/LegendPanel.vue | 6
src/components/plugin/FullScreen.js | 174 +++++++++++++++++
src/components/helpers/BasemapHelper.js | 3
src/Sgis.js | 4
12 files changed, 466 insertions(+), 76 deletions(-)
diff --git a/package.json b/package.json
index e098be7..2bd03a4 100644
--- a/package.json
+++ b/package.json
@@ -18,6 +18,7 @@
"dayjs": "^1.9.6",
"echarts": "^4.2.1",
"element-ui": "^2.14.1",
+ "fullscreen": "^1.1.1",
"jquery": "^3.5.1",
"js-cookie": "^2.2.0",
"leaflet": "^1.6.0",
@@ -26,10 +27,11 @@
"lodash": "^4.17.10",
"nprogress": "^0.2.0",
"rbush": "^3.0.1",
- "screenfull": "^3.3.2",
+ "screenfull": "^3.3.3",
"vue": "^2.6.11",
"vue-count-to": "^1.0.13",
"vue-focus": "^2.1.0",
+ "vue-fullscreen": "^2.2.0",
"vue-router": "^3.0.1",
"vuex": "^3.0.1"
},
diff --git a/src/Sgis.js b/src/Sgis.js
index 22380e4..af7ecb2 100644
--- a/src/Sgis.js
+++ b/src/Sgis.js
@@ -10,6 +10,8 @@
import MapConfig from '@/conf/MapConfig'
import DashFlow from '@components/plugin/PathDashFlow'
import CanvasMarkers from '@components/plugin/CanvasMarkers'
+import FullScreen from '@components/plugin/FullScreen'
+
let map = null
const L = window.L
const initMap = (div) => {
@@ -26,6 +28,8 @@
DashFlow.DashFlow(L) // 娴佸姩绾垮浘
CanvasMarkers.init(L)// 鐢诲竷鍥惧眰
// Leaflet鎵╁睍浠g爜
+ // 鍏ㄥ睆
+ FullScreen.init(L)
map = L.map(div, MapConfig.mapOptions)
diff --git a/src/components/LayerController/modules/LcBaseMap.vue b/src/components/LayerController/modules/LcBaseMap.vue
index e5af6f2..3afc8d8 100644
--- a/src/components/LayerController/modules/LcBaseMap.vue
+++ b/src/components/LayerController/modules/LcBaseMap.vue
@@ -16,6 +16,7 @@
data () {
return {
isShow: true,
+ currentBaseMapCode: 'tianditu_img',
basemapList: []
}
},
@@ -34,7 +35,14 @@
const code = itm.code
this.basemapList.forEach((item) => {
if (item.code === code) {
- this.basemapHelper.showBasemap(item.code, item.conf.annotationCheck, true)
+ console.log(this.currentBaseMapCode)
+ if (this.currentBaseMapCode == null || this.currentBaseMapCode !== code) {
+ this.currentBaseMapCode = code
+ this.basemapHelper.showBasemap(item.code, item.conf.annotationCheck, true)
+ } else {
+ this.basemapHelper.showBasemap(item.code, item.conf.annotationCheck, false)
+ }
+
this.basemapHelper.getBasemapList().forEach((item) => {
item.layer.bringToBack()
})
diff --git a/src/components/helpers/BasemapHelper.js b/src/components/helpers/BasemapHelper.js
index 9b29e4e..cfb5703 100644
--- a/src/components/helpers/BasemapHelper.js
+++ b/src/components/helpers/BasemapHelper.js
@@ -11,6 +11,7 @@
this.basemapList = []
this.basemapMap = new Map()
this.basemapLayerGroup = this.L.layerGroup().addTo(options.map)
+ this.currentBaseMapCode = null
}
/**
@@ -58,6 +59,8 @@
this.basemapLayerGroup.addLayer(basemap.layer)
if (showAnnotation) {
this.basemapLayerGroup.addLayer(basemap.annotation)
+ } else {
+ this.basemapLayerGroup.removeLayer(basemap.annotation)
}
}
diff --git a/src/components/panel/LegendPanel.vue b/src/components/panel/LegendPanel.vue
index 59cce89..70529c2 100644
--- a/src/components/panel/LegendPanel.vue
+++ b/src/components/panel/LegendPanel.vue
@@ -4,7 +4,7 @@
<i class="el-icon-more-outline"></i>
<span>鍥句緥</span>
</div>
- <transition name="fade">
+ <`transition` name="fade">
<div class="legend-content" v-show="legendControl">
<div class="legend-content-box" v-for="(item,index) in legendContents" :key="index">
<p>{{ item.title }}</p>
@@ -258,8 +258,8 @@
}
.fade-leave-active {
- transform-origin: right;
- animation: bounce-in 1s reverse;
+ //transform-origin: right;
+ //animation: bounce-in 1s reverse;
transform-origin: right bottom;
animation: bounce-in .5s reverse;
}
diff --git a/src/components/panel/ToolBoxPanel.vue b/src/components/panel/ToolBoxPanel.vue
index 8f90ff8..5747cc7 100644
--- a/src/components/panel/ToolBoxPanel.vue
+++ b/src/components/panel/ToolBoxPanel.vue
@@ -1,11 +1,25 @@
<template>
<div class="lefttop-toolbox-panel">
- <ul>
- <li v-for="(item,i) in imgList" :key="i" @click="toggleActive(i)" :value="total"
- :class="{'active':activeTools[i]}">
- <img :src="item"/>
- </li>
- </ul>
+ <div class="init-choose" @click="changeSelect()">
+ <img src="@/assets/images/map-pages/icon/toolbox/circle.png" alt="">
+ </div>
+ <!-- <transition name="fade">-->
+ <!-- <ul v-show='selectGroup'>-->
+ <!-- <li v-for="(item,i) in imgList" :key="i" @click="toggleActive(i)" :value="total"><img :src="item"/></li>-->
+ <!-- </ul>-->
+ <!-- </transition>-->
+ <div class="el-select-dropdown" v-show='selectGroup'>
+ <el-dropdown @command="handleCommand" trigger="click" v-for="(item,i) in imgLists" :key="i" :value="total">
+ <transition name="fade">
+ <img :src="item.title" :title="item.alt"/>
+ </transition>
+ <el-dropdown-menu>
+ <el-dropdown-item v-for="(ite,index) in item.items" :key="index" :command='ite.headings'>
+ <span @click='toggleActive(ite)'>{{ ite.headings }}</span>
+ </el-dropdown-item>
+ </el-dropdown-menu>
+ </el-dropdown>
+ </div>
</div>
</template>
@@ -20,35 +34,98 @@
export default {
name: 'ToolBoxPanel',
components: {},
+ props: ['map'],
data () {
return {
isPanelVisible: false,
total: 0,
activeTools: {},
- imgList: {
- circle: circle,
- square: square,
- polygon: polygon,
- legend: legend,
- location: location,
- fullscreen: fullscreen
- },
+ imgLists: [
+ {
+ title: circle,
+ alt: '鏍囩粯',
+ items: [
+ { headings: '绾挎爣缁�' },
+ { headings: '闈㈡爣缁�' },
+ { headings: '绠ご鏍囩粯' }
+ ]
+ },
+ {
+ title: square,
+ alt: '鏍囨敞',
+ items: [
+ { headings: '鐐规爣娉�' },
+ { headings: '绾挎爣娉�' },
+ { headings: '闈㈡爣娉�' },
+ { headings: '鏂囧瓧鏍囨敞' },
+ { headings: '鍥炬爣鏍囨敞' }
+ ]
+ },
+ {
+ title: legend,
+ alt: '娴嬮噺',
+ items: [
+ { headings: '璺濈娴嬮噺' },
+ { headings: '闈㈢Н娴嬮噺' }
+ ]
+ },
+ {
+ title: location,
+ alt: '鍒囨崲搴曞浘',
+ items: [
+ { headings: '褰卞儚鍥�' },
+ { headings: '鐭㈤噺鍥�' },
+ { headings: '鍦板舰鍥�' }
+ ]
+ },
+ {
+ title: polygon,
+ alt: '绠$綉',
+ items: [
+ { headings: '杩為�氭�у垎鏋�' },
+ { headings: '鐖嗙鍒嗘瀽' },
+ { headings: '娴佸悜鍒嗘瀽' },
+ { headings: '妯柇闈㈠垎鏋�' }
+ ]
+ },
+ {
+ title: fullscreen,
+ alt: '涓嬭浇',
+ items: [
+ { headings: '鍏ㄥ睆' },
+ { headings: 'A4妯悜' },
+ { headings: 'A4绾靛悜' }
+ ]
+ }
+ ],
form: {
regionType: '',
enterprise: ''
- }
+ },
+ selectGroup: false,
+ selectGroupOne: false
}
},
methods: {
+ changeSelect () {
+ this.selectGroup = !this.selectGroup
+ },
handleClose (done) {
console.log(done)
},
handleClick (tab, event) {
console.log(tab, event)
},
+ handleCommand (command) {
+ console.log(command)
+ if (command === '鍏ㄥ睆') {
+ this.map.toggleFullscreen()
+ }
+ },
toggleActive (k) {
- this.total++
- this.activeTools[k] = !this.activeTools[k]
+ if (k === 'fullscreen') {
+ this.map.toggleFullscreen()
+ }
},
loadData () {
@@ -58,6 +135,7 @@
this.loadData()
},
created () {
+
}
}
</script>
@@ -67,31 +145,74 @@
position: absolute;
left: 5px;
top: 5px;
- z-index: 1000;
- width: 175px;
- height: 35px;
- line-height: 30px;
- background: #07325b;
- border: 1px solid #5EF2FF;
- border-radius: 3px;
- text-align: center;
+ z-index: 999;
+ display: flex;
- ul {
- list-style: none;
- margin: 0;
- padding: 5px;
+ .init-choose {
+ //margin: 15px 5px;
+ background: #305B62;
+ //margin-top: 15px;
+ width: 35px;
+ height: 35px;
+ border-radius: 50%;
+ border: 2px skyblue solid;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ z-index: 999;
+ }
- li {
- float: left;
- width: 23px;
- height: 23px;
- margin: 0 1px;
- border: 1px solid #073C4F;
+ .el-select-dropdown {
+ position: absolute;
+ z-index: 1;
+ width: 250px;
+ height: 35px;
+ display: flex;
+ align-items: center;
+ justify-content: space-evenly;
+ background: #305B62;
+ border-radius: 15px;
+ padding-inline: 10px;
+ padding-inline-start: 30px;
+
+ .el-dropdow {
+ width: 20%;
+ }
+
+ @keyframes bounce-in {
+ 0% {
+ transform: scale(0);
+ opacity: 0.3;
+ }
+ 100% {
+ transform: scale(1);
+ opacity: 1;
+ }
+ }
+
+ .fade-enter-active {
+ transform-origin: left center;
+ animation: bounce-in .2s;
+ }
+
+ .fade-leave-active {
+ transform-origin: left;
+ animation: bounce-in .2s reverse;
}
}
- .active {
- border: 1px solid #5EF2FF;
+ .el-select-dropdown:last-child {
+ margin-left: 10px;
}
+
+ .el-dropdown-link {
+ cursor: pointer;
+ color: #409EFF;
+ }
+
+ .el-icon-arrow-down {
+ font-size: 12px;
+ }
+
}
</style>
diff --git a/src/components/plugin/FullScreen.js b/src/components/plugin/FullScreen.js
new file mode 100644
index 0000000..888371d
--- /dev/null
+++ b/src/components/plugin/FullScreen.js
@@ -0,0 +1,174 @@
+/* eslint-disable */
+const init = (L) => {
+ (function (factory) {
+ if (typeof define === 'function' && define.amd) {
+ // AMD
+ define(['leaflet'], factory)
+ } else if (typeof module !== 'undefined') {
+ // Node/CommonJS
+ // module.exports = factory(require('leaflet'))
+ factory(L)
+ } else {
+ // Browser globals
+ if (typeof window.L === 'undefined') {
+ throw new Error('Leaflet must be loaded first')
+ }
+ factory(window.L)
+ }
+ }(function (L) {
+ L.Control.Fullscreen = L.Control.extend({
+ options: {
+ position: 'topleft',
+ title: {
+ false: 'View Fullscreen',
+ true: 'Exit Fullscreen'
+ }
+ },
+
+ onAdd: function (map) {
+ var container = L.DomUtil.create('div', 'leaflet-control-fullscreen leaflet-bar leaflet-control')
+
+ this.link = L.DomUtil.create('a', 'leaflet-control-fullscreen-button leaflet-bar-part', container)
+ this.link.href = '#'
+
+ this._map = map
+ this._map.on('fullscreenchange', this._toggleTitle, this)
+ this._toggleTitle()
+
+ L.DomEvent.on(this.link, 'click', this._click, this)
+
+ return container
+ },
+
+ _click: function (e) {
+ L.DomEvent.stopPropagation(e)
+ L.DomEvent.preventDefault(e)
+ this._map.toggleFullscreen(this.options)
+ },
+
+ _toggleTitle: function () {
+ this.link.title = this.options.title[this._map.isFullscreen()]
+ }
+ })
+
+ L.Map.include({
+ isFullscreen: function () {
+ return this._isFullscreen || false
+ },
+
+ toggleFullscreen: function (options) {
+ var container = this.getContainer()
+ if (this.isFullscreen()) {
+ if (options && options.pseudoFullscreen) {
+ this._disablePseudoFullscreen(container)
+ } else if (document.exitFullscreen) {
+ document.exitFullscreen()
+ } else if (document.mozCancelFullScreen) {
+ document.mozCancelFullScreen()
+ } else if (document.webkitCancelFullScreen) {
+ document.webkitCancelFullScreen()
+ } else if (document.msExitFullscreen) {
+ document.msExitFullscreen()
+ } else {
+ this._disablePseudoFullscreen(container)
+ }
+ } else {
+ if (options && options.pseudoFullscreen) {
+ this._enablePseudoFullscreen(container)
+ } else if (container.requestFullscreen) {
+ container.requestFullscreen()
+ } else if (container.mozRequestFullScreen) {
+ container.mozRequestFullScreen()
+ } else if (container.webkitRequestFullscreen) {
+ container.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT)
+ } else if (container.msRequestFullscreen) {
+ container.msRequestFullscreen()
+ } else {
+ this._enablePseudoFullscreen(container)
+ }
+ }
+ },
+
+ _enablePseudoFullscreen: function (container) {
+ L.DomUtil.addClass(container, 'leaflet-pseudo-fullscreen')
+ this._setFullscreen(true)
+ this.fire('fullscreenchange')
+ },
+
+ _disablePseudoFullscreen: function (container) {
+ L.DomUtil.removeClass(container, 'leaflet-pseudo-fullscreen')
+ this._setFullscreen(false)
+ this.fire('fullscreenchange')
+ },
+
+ _setFullscreen: function (fullscreen) {
+ this._isFullscreen = fullscreen
+ var container = this.getContainer()
+ if (fullscreen) {
+ L.DomUtil.addClass(container, 'leaflet-fullscreen-on')
+ } else {
+ L.DomUtil.removeClass(container, 'leaflet-fullscreen-on')
+ }
+ this.invalidateSize()
+ },
+
+ _onFullscreenChange: function (e) {
+ var fullscreenElement =
+ document.fullscreenElement ||
+ document.mozFullScreenElement ||
+ document.webkitFullscreenElement ||
+ document.msFullscreenElement
+
+ if (fullscreenElement === this.getContainer() && !this._isFullscreen) {
+ this._setFullscreen(true)
+ this.fire('fullscreenchange')
+ } else if (fullscreenElement !== this.getContainer() && this._isFullscreen) {
+ this._setFullscreen(false)
+ this.fire('fullscreenchange')
+ }
+ }
+ })
+
+ L.Map.mergeOptions({
+ fullscreenControl: false
+ })
+
+ L.Map.addInitHook(function () {
+ if (this.options.fullscreenControl) {
+ this.fullscreenControl = new L.Control.Fullscreen(this.options.fullscreenControl)
+ this.addControl(this.fullscreenControl)
+ }
+
+ var fullscreenchange
+
+ if ('onfullscreenchange' in document) {
+ fullscreenchange = 'fullscreenchange'
+ } else if ('onmozfullscreenchange' in document) {
+ fullscreenchange = 'mozfullscreenchange'
+ } else if ('onwebkitfullscreenchange' in document) {
+ fullscreenchange = 'webkitfullscreenchange'
+ } else if ('onmsfullscreenchange' in document) {
+ fullscreenchange = 'MSFullscreenChange'
+ }
+
+ if (fullscreenchange) {
+ var onFullscreenChange = L.bind(this._onFullscreenChange, this)
+
+ this.whenReady(function () {
+ L.DomEvent.on(document, fullscreenchange, onFullscreenChange)
+ })
+
+ this.on('unload', function () {
+ L.DomEvent.off(document, fullscreenchange, onFullscreenChange)
+ })
+ }
+ })
+
+ L.control.fullscreen = function (options) {
+ return new L.Control.Fullscreen(options)
+ }
+ }))
+}
+export default {
+ init
+}
diff --git a/src/components/plugin/Leaflet.GridLayer.FadeOut.js b/src/components/plugin/Leaflet.GridLayer.FadeOut.js
new file mode 100644
index 0000000..be038a2
--- /dev/null
+++ b/src/components/plugin/Leaflet.GridLayer.FadeOut.js
@@ -0,0 +1,76 @@
+/* eslint-disable */
+// Adds a fade-out animation to grid layers when they're removed from the map
+
+(function () {
+ var gridProto = L.GridLayer.prototype
+ var onRemoveProto = gridProto.onRemove
+ var onAddProto = gridProto.onAdd
+ var fadeDuration = 200
+
+ L.GridLayer.include({
+
+ onAdd: function (map) {
+ if (this._fadeOutTime) {
+ var now = performance.now() || (+new Date())
+ L.Util.cancelAnimFrame(this._fadeOutFrame)
+ this._fadeOutTime = now + fadeDuration - this._fadeOutTime + now
+ L.Util.requestAnimFrame(this._fadeIn, this)
+ } else {
+ onAddProto.call(this, map)
+ }
+ },
+
+ onRemove: function (map) {
+ if (this._fadeOutTime) {
+ // We're removing this *again* quickly after removing and re-adding
+ var now = performance.now() || (+new Date())
+
+ this._fadeOutTime = now + fadeDuration - this._fadeOutTime + now
+ }
+ this._fadeOutTime = (performance.now() || (+new Date())) + fadeDuration * 2
+ this._fadeOutMap = this._map
+
+ L.Util.requestAnimFrame(this._fadeOut, this)
+ },
+
+ _fadeOut: function () {
+ if (!this._fadeOutTime || !this._container) { return }
+
+ var now = performance.now() || (+new Date())
+
+ var opacity = Math.min((this._fadeOutTime - now) / fadeDuration, 1)
+ // console.log('fadeout:', opacity);
+ if (opacity < 0) {
+ this._fadeOutTime = false
+
+ onRemoveProto.call(this, this._fadeOutMap)
+
+ return
+ }
+
+ L.DomUtil.setOpacity(this._container, opacity * this.options.opacity)
+
+ this._fadeOutFrame = L.Util.requestAnimFrame(this._fadeOut, this)
+ },
+
+ // Only runs when the gridlayer is quickly re-added while it's being faded out
+ _fadeIn: function _fadeIn () {
+ if (!this._fadeOutTime || !this._container) { return }
+
+ var now = performance.now() || (+new Date())
+
+ var opacity = (now - this._fadeOutTime) / fadeDuration
+ // console.log('fadein:', opacity);
+
+ if (opacity > 1) {
+ this._fadeOutTime = false
+ return
+ }
+
+ L.DomUtil.setOpacity(this._container, opacity * this.options.opacity)
+
+ L.Util.requestAnimFrame(this._fadeIn, this)
+ }
+
+ })
+})()
diff --git a/src/conf/MapConfig.js b/src/conf/MapConfig.js
index 4512d66..8e502d3 100644
--- a/src/conf/MapConfig.js
+++ b/src/conf/MapConfig.js
@@ -34,6 +34,7 @@
const mapConfig = {
IsLoadMapByToken: true, // 鏄惁閫氳繃token鍔犺浇鍦板浘
showBaseMapType: 1, // 1鏄剧ず澶╁湴鍥撅紝2鏄剧ずarcgis鍦板浘
+ // defaultBasemapCode: 'tianditu_img', // 榛樿鏄剧ず 鍦板浘绫诲瀷
IntranetBaseMaps: TDT.intranet,
InternetBaseMaps: TDT.internet,
Layers: { LayerSewersLine: [LayerSewersLine], layerSewersPoint: LayerSewersPoint } // 姹¢洦姘村浘灞傞厤缃�
diff --git a/src/conf/TDT.js b/src/conf/TDT.js
index 1c5ad9e..0c5b418 100644
--- a/src/conf/TDT.js
+++ b/src/conf/TDT.js
@@ -4,7 +4,7 @@
const TIANDITU_GIS_TOKEN = '5d76218063082952d18b76da5005f490' // 澶囩敤tk: f1b72b5e7cb1175acddfa485f1bc9770
const intranet = [
{
- code: 'sinopec_img',
+ code: 'tianditu_img',
name: '涓煶鍖栧ぉ鍦板浘褰卞儚',
icon_actived: '/assets/images/map-pages/icon/img.png',
icon_deactived: '/assets/images/map-pages/icon/img.png',
@@ -40,7 +40,7 @@
}
},
{
- code: 'sinopec_vec',
+ code: 'tianditu_vec',
name: '涓煶鍖栧ぉ鍦板浘鐭㈤噺',
icon_actived: '/assets/images/map-pages/icon/road.png',
icon_deactived: '/assets/images/map-pages/icon/road.png',
diff --git a/src/main.js b/src/main.js
index 95591a3..28cfbd5 100644
--- a/src/main.js
+++ b/src/main.js
@@ -12,6 +12,7 @@
import L from 'leaflet'
import 'leaflet.markercluster'
import 'leaflet-canvas-markers'
+import './components/plugin/Leaflet.GridLayer.FadeOut'
Vue.config.productionTip = false
Vue.use(ElementUI)
diff --git a/src/views/MapTemplate.vue b/src/views/MapTemplate.vue
index a1c32db..a98e84c 100644
--- a/src/views/MapTemplate.vue
+++ b/src/views/MapTemplate.vue
@@ -1,19 +1,19 @@
<template>
- <div class="full-screen">
- <popup ref="popup" @callPopup="callPopup"></popup>
- <div id="map" ref="rootmap">
- </div>
- <sgis-layer-controller :preset="'warningPreset'">
- <lc-basemap></lc-basemap>
- <!-- <div class="barline"></div>-->
- <lc-service-layer class="barline" v-if="lcServiceLayerVisible"></lc-service-layer>
- </sgis-layer-controller>
- <monitor-panel></monitor-panel>
-<!-- <top-enterprise-panel></top-enterprise-panel>-->
- <tool-box-panel></tool-box-panel>
- <menu-special></menu-special>
- <legend-panel></legend-panel>
+ <div class="full-screen">
+ <popup ref="popup" @callPopup="callPopup"></popup>
+ <div id="map" ref="rootmap">
</div>
+ <sgis-layer-controller :preset="'warningPreset'">
+ <lc-basemap></lc-basemap>
+ <!-- <div class="barline"></div>-->
+ <lc-service-layer class="barline" v-if="lcServiceLayerVisible"></lc-service-layer>
+ </sgis-layer-controller>
+ <monitor-panel></monitor-panel>
+ <!-- <top-enterprise-panel></top-enterprise-panel>-->
+ <tool-box-panel :map="this.map"></tool-box-panel>
+ <menu-special></menu-special>
+ <legend-panel></legend-panel>
+ </div>
</template>
<script>
@@ -134,23 +134,23 @@
<style lang="less">
- .full-screen {
- width: 100%;
- height: 100%;
- margin: 0;
- padding: 0;
- position: absolute;
+.full-screen {
+ width: 100%;
+ height: 100%;
+ margin: 0;
+ padding: 0;
+ position: absolute;
- #map {
- height: 100%;
- width: 100%;
- }
+ #map {
+ height: 100%;
+ width: 100%;
+ }
- .barline {
- //width: 100%;
- //height: 1px;
- //background-color: #0661AE;
- border-top: 1px solid #0661AE;
- }
- }
-</style>>
+ .barline {
+ //width: 100%;
+ //height: 1px;
+ //background-color: #0661AE;
+ border-top: 1px solid #0661AE;
+ }
+}
+</style>
--
Gitblit v1.8.0