翠屏区智慧广电示范区
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

208 lines
3.6 KiB

/*
椭圆会使内部失真 transform: rotateX(50deg);
*/
.rotation3D {
position: relative;
width: 800px;
height: 800px;
cursor: move;
user-select: none;
margin: 0 auto;
margin-top: -120px;
margin-left: 275px;
}
.rotation3D .center {
display: none;
position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
}
.rotation3D .itemList {
position: absolute;
width: 100%;
height: 100%;
z-index: 20;
}
.rotation3D .lineList {
position: absolute;
width: 100%;
height: 100%;
z-index: 10;
transform-style: preserve-3d;
}
/*---------------------------点样式---------------------------*/
.rotation3D__item {
position: relative;
display: block;
cursor: pointer;
width: 210px;
/* height: 230px; */
text-align: center;
line-height: 30px;
font-size: 16px;
color: white;
z-index: 999 !important;
/*background: #2292ef; border-radius: 4px;*/
}
.rotation3D__item .scale {
width: 100%;
height: 100%;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
}
.rotation3D__item .cont {
width: 146px;
height: 146px;
position: relative;
}
.rotation3D__item .iconfont {
width: 50px;
height: 50px;
}
.rotation3D__item .cont p {
color: #fff;
}
/*底座*/
.rotation3D__item .baseImg {
width: 210px;
height: 118px;
z-index: 998;
background: url("../images/item-bottom.png");
background-size: 100%;
display: flex;
align-items: center;
flex-direction: column;
}
/*---------------------------
线样式
线高为总高的一般
---------------------------*/
.rotation3D__line {
position: absolute;
left: 50%;
top: 50%;
display: block;
width: 2px;
height: 50%;
padding-top: 60px;
color: #fff;
font-size: 50px;
/*background: #fff;*/
/*原点设置在中间*/
transform-origin: 50% 0;
transform-style: preserve-3d;
}
.rotation3D__line .pos {
position: absolute;
top: 0;
}
.rotation3D__line svg {
position: absolute;
top: 0;
}
.rotation3D__line svg path {
stroke: #fff;
fill: none;
stroke-width: 3;
animation: path-animation 100s linear 0s infinite normal;
}
@keyframes path-animation {
0% {
stroke-dashoffset: 500;
}
100% {
stroke-dashoffset: 0;
}
}
.rotation3D__line .dot {
position: absolute;
top: 0;
left: 0;
text-align: center;
/*width: 35px; height: 35px; font-size: 35px; */
width: 24px;
height: 24px;
font-size: 24px;
}
.rotation3D__line .dot1, .rotation3D__line .dot3, .rotation3D__line .dot4 {
animation: svg-path-animation 6s ease-in-out 0s infinite normal;
}
.rotation3D__line .dot1 {
offset-path: path("M0 400, 0 0");
offset-distance: 0%;
}
.rotation3D__line .dot2 {
offset-path: path("M0 200, 0 0");
offset-distance: 0%;
background: #ffd200;
border-radius: 100%;
font-size: 22px;
color: #000;
}
.rotation3D__line .dot3 {
offset-path: path("M20 400 S 0 200, 20 0");
offset-distance: 0%;
}
.rotation3D__line .dot4 {
offset-path: path("M20 0 S 40 200, 20 400");
offset-distance: 0%;
}
@keyframes svg-path-animation {
from {
offset-distance: 0%;
}
to {
offset-distance: 100%;
}
}
/*颜色*/
.rotation3D__line.blue {
color: #07b2f9;
}
.rotation3D__line.green {
color: #00ff5b;
}
.rotation3D__line.yellow {
color: #ffd500;
}
.rotation3D__line.blue svg path {
stroke: #07b2f9;
}
.rotation3D__line.green svg path {
stroke: #00ff5b;
}
.rotation3D__line.yellow svg path {
stroke: #ffd500;
}