Files
pureRef/index.css
小煜 73aaab6d36 feat: 初始化RefVroid项目,添加核心功能与资源文件
- 添加主窗口、帮助窗口和系统托盘功能
- 实现图片、视频和文本的拖放与粘贴功能
- 添加场景保存与加载功能
- 包含基本UI样式和快捷键帮助文档
- 添加.gitattributes和.npmrc配置文件
- 包含LICENSE许可文件和图标资源
2025-12-17 21:00:07 +08:00

272 lines
5.4 KiB
CSS

:root {
--scale: 1;
}
html {
border: #0c0c0c solid 1px;
transform-origin: 0 0;
transform: translate3d(0, 0, 0);
}
html,
body {
background: #202020;
background-color: transparent;
height: calc(100% - 2px);
margin: 0px;
padding: 0px;
}
body {
transition: -webkit-transform 0.1s ease 0s;
transform-origin: 0px 0px;
transform: translate(0px, 0px) scale(1);
display: flex;
justify-content: center;
align-items: center;
overflow: hidden;
width: 0px;
height: 0px;
}
#welcome {
font-family: sans-serif;
color: #7a7a7a;
text-align: center;
-webkit-user-select: none;
user-select: none;
width: 360px;
display: flex;
flex-direction: column;
height: 107px;
justify-content: flex-end;
position: absolute;
left: calc(50vw - 360px / 2);
top: calc(50vh - 140px / 2);
}
h1,
p {
margin: 0;
}
#welcome h1 {
line-height: 1;
font-weight: normal;
font-size: x-large;
color: #888888;
}
#welcome p {
margin-top: 12px;
}
#workspaceBox {
position: absolute;
background-color: #2a2a2a;
z-index: -1;
}
#itemHolder {
height: 100%;
width: 100%;
}
.selectedItem {
outline: calc(0.15rem / var(--scale)) solid rgb(37 157 199);
}
.selectedItem.resizeItem {
}
#itemHolder > * {
position: absolute;
}
.textElement {
-webkit-user-select: none;
user-select: none;
text-shadow: rgb(255, 255, 255) -1px -1px 0px, rgb(255, 255, 255) 1px -1px 0px,
rgb(255, 255, 255) -1px 1px 0px, rgb(255, 255, 255) 1px 1px 0px;
text-align: center;
display:block;
white-space: nowrap;
}
.hiddenTextTester{
opacity: 0;
position: absolute;
font-size: 1ch;
-webkit-user-select: none;
user-select: none;
pointer-events: none;
}
.iframeDiv {
min-height: 0;
min-width: 0;
-webkit-user-select: none;
user-select: none;
height: 100%;
pointer-events: none;
width: 100%;
}
@keyframes rock {
0% {
transform: rotate(-9deg);
filter: blur(0.5px);
}
50% {
filter: blur(2px);
}
100% {
transform: rotate(9deg);
filter: blur(0.5px);
}
}
@keyframes gradientLoad {
from {
background-size: 150% 100%;
filter: drop-shadow(2px 4px 6px black);
}
to {
background-size: 200% 200%;
filter: drop-shadow(2px 4px 2px black);
}
}
.playerNeedsSetup::before {
background-image: url("images/play.svg");
background-repeat: no-repeat;
content: "";
position: absolute;
width: 71px;
height: 50px;
transform: rotate(0deg);
top: calc(50% - 50px / 2);
right: 0px;
bottom: 0px;
left: calc(50% - 71px / 2);
opacity: 0.5;
animation-name: rock;
animation-duration: 0.5s;
animation-direction: alternate;
animation-iteration-count: infinite;
}
.playerNeedsSetup {
background-image: radial-gradient(
circle,
rgba(0, 0, 0, 0.1) 0%,
rgba(0, 0, 0, 0.6) 100%
);
background-size: 200% 200%;
filter: drop-shadow(2px 4px 6px black);
animation-name: gradientLoad;
animation-duration: 1s;
animation-direction: alternate-reverse;
animation-iteration-count: infinite;
background-position: center;
}
.editVideo {
width: 100vw !important;
height: calc(100vh - 20px) !important;
transform: unset !important;
background-color: black;
}
.disableBorder {
border: unset !important;
}
.timeline {
position: absolute;
width: 100vw;
height: 20px;
background: #403f3f;
bottom: 0;
z-index: 9999;
left: 0;
right: 0;
top: calc(100vh - 20px);
}
#progressbar {
background-color: #ececec;
box-shadow: inset 0 0.5em 0.5em rgb(0 0 0 / 5%);
bottom: 0;
left: 0;
position: absolute;
right: 0;
top: 0;
transition: all 400ms ease-out;
}
#slider {
background-color: rgba(78, 47, 102, 1);
}
.hide {
display: none !important;
}
#slider:hover .noUi-connect,
#slider:hover .noUi-handle {
filter: brightness(1.5);
transition: filter 300ms ease;
}
#slider .noUi-handle {
border-left: 1em solid transparent;
border-right: 1em solid transparent;
border-bottom: 1em solid #a74040;
outline: none;
border-radius: unset;
background: unset;
cursor: default;
box-shadow: unset;
border-top: unset;
opacity: 0.95;
}
#slider .noUi-handle:before,
#slider .noUi-handle:after {
content: unset;
}
#slider .noUi-connect {
background: #b128284a; /*linear-gradient(90deg, rgba(78,47,102,1) 0%, rgba(91,52,122,1) 47%, rgba(113,80,136,1) 47%, rgba(121,76,157,1) 100%);*/
opacity: 0.9;
box-shadow: inset 3px 2px 15px 0px #000000;
transition: all 400ms ease-out;
}
#slider .noUi-target {
background: #bfbfbf;
border-radius: 7px;
border: unset;
box-shadow: inset 5px 6px 7px #d3d1d6, 8px 2px 8px -5px #4b285d;
}
/* 选择框样式 */
#selectionBox {
position: absolute;
border: 2px solid rgba(37, 157, 199, 0.8);
background-color: rgba(37, 157, 199, 0.2);
display: none;
pointer-events: none;
z-index: 9999;
left: 0;
top: 0;
}
/* 锁定状态样式 */
body.locked {
pointer-events: none;
}
body.locked #lockIndicator {
display: block !important;
visibility: visible !important;
}
#lockIndicator {
display: none;
visibility: hidden;
position: fixed !important;
bottom: 20px !important;
right: 20px !important;
font-size: 48px;
opacity: 0.8;
pointer-events: none !important;
z-index: 2147483647 !important;
text-shadow:
0 0 10px rgba(0, 0, 0, 1),
0 0 20px rgba(0, 0, 0, 0.8),
2px 2px 4px rgba(0, 0, 0, 0.9);
filter: drop-shadow(0 0 8px rgba(255, 255, 255, 0.9));
background: rgba(0, 0, 0, 0.3);
padding: 10px;
border-radius: 10px;
backdrop-filter: blur(5px);
}