06-full-track.html 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. <!doctype html>
  2. <html lang="zh-CN">
  3. <head>
  4. <meta charset="UTF-8" />
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  6. <title>06 全宽滑轨 · Tab Demo</title>
  7. <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet" />
  8. <link rel="stylesheet" href="_shared.css" />
  9. <style>
  10. .tabs-06-inner {
  11. position: relative;
  12. }
  13. </style>
  14. </head>
  15. <body>
  16. <header class="demo-banner">
  17. <div>
  18. <h1><span class="demo-badge">06 全宽滑轨</span> 质检物料库 · Tab 样式 Demo</h1>
  19. <p>三等分全宽轨道,白色滑块随 Tab 平滑移动</p>
  20. </div>
  21. <div class="demo-banner__actions">
  22. <a href="index.html">← 选型索引</a>
  23. </div>
  24. </header>
  25. <div class="page-wrap">
  26. <section class="panel" id="panel-root">
  27. <div class="panel-top"><h2>质检物料库</h2></div>
  28. <div class="panel-tab-zone">
  29. <div class="tabs-06" data-active="0">
  30. <div class="tabs-06-inner">
  31. <div class="tabs-06-slider"></div>
  32. <div class="tabs-06-track" role="tablist">
  33. <button type="button" class="tab-btn is-active" data-tab="list" role="tab">物料列表</button>
  34. <button type="button" class="tab-btn" data-tab="usage" role="tab">变动记录</button>
  35. <button type="button" class="tab-btn" data-tab="stockCheck" role="tab">库存盘点</button>
  36. </div>
  37. </div>
  38. </div>
  39. </div>
  40. <div class="tab-panel is-active" data-panel="list" id="content"></div>
  41. </section>
  42. <p class="style-note"><strong>实现:</strong>可用 CSS <code>transform: translateX</code> 或 Vue 计算激活 index;三 Tab 等分最协调,Tab 数量变化需重算宽度。</p>
  43. </div>
  44. <script src="_demo-shell.js"></script>
  45. <script>
  46. document.getElementById('content').innerHTML = mockContent('list')
  47. initPanelTabs('panel-root')
  48. </script>
  49. </body>
  50. </html>