Browse Source

交通登录页面

wang_xy 2 years ago
parent
commit
9fa0875108
2 changed files with 70 additions and 1 deletions
  1. 69 0
      src/components/star.vue
  2. 1 1
      src/views/system/login.vue

+ 69 - 0
src/components/star.vue

@@ -0,0 +1,69 @@
+<template>
+  <div class="stars">
+    <div class="star" v-for="(item, index) in starsCount" :key="index" ref="star"></div>
+  </div>
+</template>
+ 
+<script>
+ 
+export default {
+  name: 'StarBackground',
+  props: {},
+  data() {
+    return {
+      starsCount: 1500,
+      distance: 1000
+    }
+  },
+  mounted() {
+    this.initStars()
+  },
+  methods: {
+    initStars() {
+      let starArr = this.$refs.star
+      starArr.forEach(item => {
+        let speed = 0.2 + (Math.random() * 1)
+        let thisDistance = this.distance + (Math.random() * 300)
+        item.style.transformOrigin = `0 0 ${thisDistance}px`
+        item.style.transform = `translate3d(0, 0, -${thisDistance}px) rotateY(${(Math.random() * 360)}deg) rotateX(${(Math.random() * -50)}deg) scale(${speed}, ${speed})`
+      })
+    }
+  }
+}
+</script>
+ 
+<style scoped lang="scss">
+@keyframes rotate {
+  0% {
+    transform: perspective(600px) rotateZ(20deg) rotateX(-40deg) rotateY(0);
+  }
+  100% {
+    transform: perspective(600px) rotateZ(20deg) rotateX(-40deg) rotateY(-360deg);
+  }
+}
+ 
+.stars {
+  transform: perspective(500px);
+  transform-style: preserve-3d;
+  position: absolute;
+  perspective-origin: 50% 100%;
+  left: 50%;
+  animation: rotate 90s infinite linear;
+  bottom: -200px;
+}
+ 
+.star {
+  width: 3px;
+  height: 2px;
+  background: #39ffe8;
+  position: absolute;
+  top: 0;
+  left: 0;
+  backface-visibility: hidden;
+  border-radius: 2px;
+  box-shadow: 0 0 5px rgba($color: #00f6ff, $alpha: 1);
+  // box-shadow: 0 0 5px rgba(81, 203, 238, 1);
+  // -webkit-box-shadow: 0 0 5px rgba(81, 203, 238, 1);
+  // -moz-box-shadow: 0 0 5px rgba(81, 203, 238, 1);
+}
+</style>

+ 1 - 1
src/views/system/login.vue

@@ -198,7 +198,7 @@
     justify-content: center;
     align-items: center;
     height: 100%;
-    background: url("../../assets/images/login/login-ty.jpg") center;
+    background: url("../../assets/images/login/login.jpg") center;
     background-size: cover;
   }