123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256 |
- <template>
- <div class="main">
- <div class="header">
- <span class="header-title">MES 生产执行 制造</span>
- <div class="stage"><div class="circle"><span class="shadow"></span></div></div>
- <div class="planet">
- <div class="ball">
- <span class="title">设备系统</span>
- <div class="stage1"><div class="circle"><span class="shadow"></span></div></div>
- </div>
- <div class="ball second">
- <span class="title">质量系统</span>
- <div class="stage1"><div class="circle"><span class="shadow"></span></div></div>
- </div>
- <div class="ball third">
- <span class="title">生产系统</span>
- <div class="stage1"><div class="circle"><span class="shadow"></span></div></div>
- </div>
- <div class="ball four">
- <span class="title">条码系统</span>
- <div class="stage1"><div class="circle"><span class="shadow"></span></div></div>
- </div>
- <div class="ball five">
- <span class="title">排班系统</span>
- <div class="stage1"><div class="circle"><span class="shadow"></span></div></div>
- </div>
- <div class="ball six">
- <span class="title">仓库系统</span>
- <div class="stage1"><div class="circle"><span class="shadow"></span></div></div>
- </div>
- </div>
- </div>
- </div>
- </template>
- <script>
- export default {
- }
- </script>
- <style lang="less" scoped>
- .main{
- width: 1920px;
- height: 1080px;
- background: url(~@/assets/mine-bg.png);
- overflow: hidden;
- .header {
- width: 100%;
- padding-top:200px;
- display:flex;
- position: relative;
- justify-content: center;
- align-items: center;
- transform-style: preserve-3d;
- perspective: 1500px;
- .header-title {
- position: absolute;
- top:62%;
- left:41%;
- z-index:100000;
- font-size: 40px;
- color: #FFFFFF;
- background: linear-gradient(0deg, #079cf1 20%, #FFFFFF 50%);
- -webkit-background-clip: text;
- -webkit-text-fill-color: transparent;
- font-weight: bold;
- }
- }
- .stage {
- width: 300px;
- height: 300px;
- display: inline-block;
- margin: 20px;
- perspective: 1200px;
- perspective-origin: 50% 50%;
- .circle{
- background: url('~@/assets/earth.png') repeat-x;
- background-size: auto 100%;
- border-radius: 50%;
- height: 300px;
- width: 300px;
- position: relative;
- margin: 0;
- animation: move-map 30s infinite linear;
- &::before {
- content:'';
- position: absolute;
- top:0;
- left:0;
- width: 100%;
- height: 100%;
- border-radius: 50%;
- box-shadow: -40px 10px 70px 10px RGBA(40, 83, 205, 0.7) inset;
- z-index: 2;
- }
- &::after {
- content:'';
- position: absolute;
- top:0;
- left:0;
- width: 100%;
- height: 100%;
- border-radius: 50%;
- filter: blur(0);
- opacity: 0.5;
- background: radial-gradient(circle at 50% 120%, #81e8f6, #76deef 10%, #055194 80%, #062745 100%);
- background-size: auto 100%;
- z-index: 2222222;
- }
- }
- }
- .stage1 {
- width: 200px;
- height: 200px;
- display: inline-block;
- margin: 20px;
- perspective-origin: 50% 50%;
- .circle{
- background: url('~@/assets/earthpng.png') repeat-x;
- background-size: auto 100%;
- border-radius: 50%;
- height: 200px;
- width: 200px;
- position: relative;
- margin: 0;
- animation: move-map 30s infinite linear;
- &::before {
- content:'';
- position: absolute;
- top:0;
- left:0;
- width: 100%;
- height: 100%;
- border-radius: 50%;
- box-shadow: -40px 10px 70px 10px RGBA(40, 83, 205, 0.7) inset;
- z-index: 2;
- }
- &::after {
- content:'';
- position: absolute;
- top:0;
- left:0;
- width: 100%;
- height: 100%;
- border-radius: 50%;
- filter: blur(0);
- background: url('~@/assets/earth-bg.png') no-repeat;
- background-size: 200%;
- opacity: 0.8;
- background-position: -100px -130px;
- z-index: 222;
- }
- }
- }
- }
- .planet {
- position: absolute;
- left:390px;
- top:30px;
- border: 5px solid #13c2c2;
- width: 1200px;
- height: 1200px;
- transform: scaleY(0.5) rotateZ(30deg);
- border-radius: 50%;
- transform-style: preserve-3d;
- }
- .ball {
- width: 200px;
- height: 200px;
- position: absolute;
- border-radius: 50%;
- left: calc(50% - 25px);
- top: -100px;
- text-align: center;
- line-height: 200px;
- color: #13c2c2;
- transform: rotateZ(-30deg) scaleY(2);
- .title {
- position: absolute;
- top:20px;
- left:20px;
- width: 100%;
- height: 100%;
- z-index:100000;
- font-size: 35px;
- color: #FFFFFF;
- background: linear-gradient(0deg, #079cf1 40%, #FFFFFF 50%);
- -webkit-background-clip: text;
- -webkit-text-fill-color: transparent;
- font-weight: bold;
- }
- }
- .second {
- left: calc(50% + 450px);
- top: 400px;
- }
- .third {
- left: calc(50% + 230px);
- top: 910px;
- }
- .four {
- left: calc(50% - 300px);
- top: 1030px;
- }
- .five {
- left: calc(50% - 745px);
- top: 480px;
- }
- .six {
- left: calc(50% - 530px);
- top: 10px;
- }
- .planet {
- animation: planet-rotate 16s linear infinite;
- }
- .ball {
- animation: self-rotate 16s linear infinite;
- }
- /* // 公转动画 */
- @keyframes planet-rotate {
- 0% {
- transform: rotateX(60deg)scaleY(0.5) rotate(0);
- }
- 100% {
- transform: rotateX(60deg) scaleY(0.5) rotate(360deg);
- }
- }
- /* // 自转动画 */
- @keyframes self-rotate {
- 0% {
- transform: rotate(0) scaleY(2) rotateX(-60deg);
- }
- 100% {
- transform: rotate(-360deg) scaleY(2) rotateX(-60deg);
- }
- }
- @keyframes move-map {
- 0% {
- background-position: -880px 0; }
- 100% {
- background-position: 0 0; } }
- </style>
|