js+css实现浏览器mp4视频转gif图片代码
代码语言:html
所属分类:多媒体
代码描述:js+css实现浏览器mp4视频转gif图片代码
代码标签: js css 浏览器 mp4 视频 转 gif 图片 代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>GIForge - 视频转GIF工具</title>
<script src="https://cdn.tailwindcss.com"></script>
<link href="https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;600&family=Noto+Sans+SC:wght@300;400;500;700;900&display=swap" rel="stylesheet">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css">
<script>
tailwind.config = {
theme: {
extend: {
colors: {
deep: '#06060e',
base: '#0c0c18',
card: '#14142a',
'card-h': '#1a1a36',
bdr: '#28284a',
'bdr-a': '#48488a',
accent: '#00e68a',
'accent-d': '#00b36b',
txt: '#e4e4f0',
'txt-d': '#7070a0',
danger: '#ff4466',
warn: '#ffaa22',
},
fontFamily: {
sans: ['"Noto Sans SC"', 'sans-serif'],
mono: ['"JetBrains Mono"', 'monospace'],
}
}
}
}
</script>
<style>
:root {
--accent: #00e68a;
--accent-glow: rgba(0,230,138,0.12);
}
* { box-sizing: border-box; }
body { background: #06060e; color: #e4e4f0; font-family: 'Noto Sans SC', sans-serif; }
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: #0c0c18; }
::-webkit-scrollbar-thumb { background: #28284a; border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: #48488a; }
/* 背景网格动画 */
.bg-grid {
background-image:
linear-gradient(rgba(0,230,138,0.03) 1px, transparent 1px),
linear-gradient(90deg, rgba(0,230,138,0.03) 1px, transparent 1px);
background-size: 60px 60px;
animation: gridMove 20s linear infinite;
}
@keyframes gridMove {
0% { background-position: 0 0; }
100% { background-position: 60px 60px; }
}
/* 拖拽区域虚线流动 */
.drop-zone {
border: 2px dashed #28284a;
transition: all 0.3s;
position: relative;
}
.drop-zone::before {
content: '';
position: absolute;
inset: -2px;
border: 2px dashed transparent;
border-radius: inherit;
pointer-events: none;
}
.drop-zone.dragover {
border-color: var(--accent);
background: var(--accent-glow);
box-shadow: 0 0 40px rgba(0,230,138,0.08);
}
.drop-zone:hover { border-color: #48488a; }
/* 流光边框 */
.glow-border {
position: relative;
overflow: hidden;
}
.glow-border::after {
content: '';
position: absolute;
top: -50%;
left: -50%;
width: 200%;
height: 200%;
background: conic-gradient(from 0deg, transparent, var(--accent), transparent, transparent);
animation: glowRotate 4s linear infinite;
opacity: 0;
transition: opacity 0.3s;
}
.glow-border:hover::after { opacity: 0.15; }
@keyframes glowRotate { to { transform: rotate(360deg); } }
/* 进度条 */
.progress-bar {
background: linear-gradient(90deg, #00e68a, #00b36b, #00e68a);
background-size: 200% 100%;
animation: progressShine 1.5s ease infinite;
}
@keyframes progressShine {
0% { background-position: 200% 0; }
100% { background-position: -200% 0; }
}
/* 输入框样式 */
.param-input {
background: #0c0c18;
border: 1px solid #28284a;
color: #e4e4f0;
border-radius: 8px;
padding: 8px 12px;
font-size: 14px;
transition: border-color 0.2s;
width: 100%;
}
.param-input:focus {
outline: none;
border-color: var(--accent);
box-shadow: 0 0 0 3px rgba(0,230,138,0.1);
}
/* range slider */
.........完整代码请登录后点击上方下载按钮下载查看















网友评论0