vue3实现移动端自行车骑行app的ui代码
代码语言:html
所属分类:布局界面
代码描述:vue3实现移动端自行车骑行app的ui代码
代码标签: vue 移动端 自行车 骑行 app ui 代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"> <title>风速骑行</title> <!-- Vue 3 CDN --> <script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/vue3.2.22.js"></script> <!-- ECharts CDN --> <script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/echarts.5.5.0.js"></script> <!-- Leaflet Map CDN --> <link type="text/css" rel="stylesheet" href="//repo.bfw.wiki/bfwrepo/css/leaflet.1.8.0.css"> <script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/leaflet.1.8.0.js"></script> <style> :root { --primary-color: #ff5722; /* 动感的橙色 */ --secondary-color: #03a9f4; /* 蓝色点缀 */ --bg-color: #121212; /* 深色模式背景 */ --card-bg-color: #1e1e1e; --text-color: #e0e0e0; --text-light-color: #9e9e9e; --border-color: #333; } html, body { margin: 0; padding: 0; height: 100%; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; background-color: var(--bg-color); color: var(--text-color); overflow: hidden; /* 防止body滚动 */ } #app { height: 100vh; display: flex; flex-direction: column; max-width: 600px; margin: 0 auto; background-color: var(--bg-color); } /* 动画 */ .fade-enter-active, .fade-leave-active { transition: opacity 0.3s ease; } .fade-enter-from, .fade-leave-to { opacity: 0; } /* 主内容区 */ main { flex-grow: 1; overflow-y: auto; padding: 20px; padding-bottom: 90px; /* 为导航留空 */ } .page-container { height: 100%; display: flex; flex-direction: column; } .page-title { font-size: 2.2em; font-weight: bold; margin-bottom: 25px; color: var(--primary-color); } /* 底部导航 */ .bottom-nav { position: fixed; bottom: 0; left: 0; right: 0; max-width: 600px; margin: 0 auto; height: 70px; background-color: var(--card-bg-color); border-top: 1px solid var(--border-color); display: flex; justify-content: space-around; align-items: center; z-index: 1000; } .nav-item { display: flex; flex-direction: column; align-items: center; cursor: pointer; color: var(--text-light-color); transition: color 0.2s; border: none; background: none; font-size: 0.8em; } .nav-item svg { width: 28px; height: 28px; margin-bottom: 4px; } .nav-item.active { color: var(--primary-color); } /* 通用组件 */ .btn { display: block; width: 100%; padding: 15px; font-size: 1.2em; font-weight: bold; color: white; background-color: var(--primary-color); border: none; border-radius: 12px; cursor: pointer; text-align: center; transition: all 0.2s; } .btn:active { transform: scale(0.98); } .btn-secondary { background-color: var(--secondary-color); } .btn-danger { background-color: #d32f2f; } /* 首页 */ .home-hero { height: 200px; border-radius: 12px; margin-bottom: 30px; background: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://images.unsplash.com/photo-1511994294221-63cd3e8a75a7?auto=format&fit=crop&w=1200&q=80') center/cover; display: flex; align-items: center; justify-content: center; text-align: center; } .home-hero h1 { font-size: 2em; color: white; } .stats-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; margin-bottom: 30px; } .stat-card { background-color: var(--card-bg-color); padding: 20px; border-radius: 12px; text-align: center; } .stat-card .value { font-size: 2em; font-weight: bold; color: var(--primary-color); } .stat-card .label { font-size: 1em; color: var(--text-light-color); } .start-ride-btn { padding: 25px; font-size: 1.5em; } /* 追踪页 */ .tracking-page { padding: 0 !important; height: 100%; position: relative; } #tracking-map { width: 100%; height: 100%; z-index: 1; } .tracking-stats-overlay { position: absolute; bottom: 20px; left: 20px; right: 20px; z-index: 2; background-color: rgba(30, 30, 30, 0.9); padding: 15px; border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.5); backdrop-filter: blur(5px); } .tracking-stats-grid { display: grid; grid.........完整代码请登录后点击上方下载按钮下载查看
网友评论0