- You did it!
-
- Visit vuejs.org to read the
- documentation
-
+
-
+
\ No newline at end of file
diff --git a/src/assets/styles/reset.css b/src/assets/styles/reset.css
new file mode 100644
index 0000000..345405d
--- /dev/null
+++ b/src/assets/styles/reset.css
@@ -0,0 +1,73 @@
+/* reset.css */
+html, body, div, span, applet, object, iframe,
+h1, h2, h3, h4, h5, h6, p, blockquote, pre,
+a, abbr, acronym, address, big, cite, code,
+del, dfn, em, img, ins, kbd, q, s, samp,
+small, strike, strong, sub, sup, tt, var,
+b, u, i, center,
+dl, dt, dd, ol, ul, li,
+fieldset, form, label, legend,
+table, caption, tbody, tfoot, thead, tr, th, td,
+article, aside, canvas, details, embed,
+figure, figcaption, footer, header, hgroup,
+menu, nav, output, ruby, section, summary,
+time, mark, audio, video {
+ margin: 0;
+ padding: 0;
+ border: 0;
+ font-size: 100%;
+ font: inherit;
+ vertical-align: baseline;
+}
+
+/* HTML5 display-role reset for older browsers */
+article, aside, details, figcaption, figure,
+footer, header, hgroup, menu, nav, section {
+ display: block;
+}
+
+body {
+ line-height: 1;
+}
+
+ol, ul {
+ list-style: none;
+}
+
+blockquote, q {
+ quotes: none;
+}
+
+blockquote:before, blockquote:after,
+q:before, q:after {
+ content: '';
+ content: none;
+}
+
+table {
+ border-collapse: collapse;
+ border-spacing: 0;
+}
+
+/* Custom reset additions */
+*, *:before, *:after {
+ box-sizing: border-box;
+}
+
+a {
+ text-decoration: none;
+ color: inherit;
+}
+
+button, input, textarea {
+ outline: none;
+ border: none;
+ background: none;
+ font-family: inherit;
+}
+
+img {
+ max-width: 100%;
+ height: auto;
+ display: block;
+}
\ No newline at end of file
diff --git a/src/assets/styles/var.less b/src/assets/styles/var.less
new file mode 100644
index 0000000..6dae481
--- /dev/null
+++ b/src/assets/styles/var.less
@@ -0,0 +1,64 @@
+// 主色调
+@primary-color: #ff6b00;
+@primary-color-light: #ff8c00;
+@primary-color-dark: #e55a00;
+
+// 辅助色
+@success-color: #00cc66;
+@warning-color: #ff9900;
+@error-color: #ff3333;
+
+// 中性色
+@white: #ffffff;
+@black: #000000;
+@gray-1: #f5f5f5;
+@gray-2: #eeeeee;
+@gray-3: #dddddd;
+@gray-4: #cccccc;
+@gray-5: #999999;
+@gray-6: #666666;
+@gray-7: #333333;
+
+// 文字颜色
+@text-color-primary: @gray-7;
+@text-color-secondary: @gray-6;
+@text-color-placeholder: @gray-5;
+@text-color-disabled: @gray-4;
+
+// 边框颜色
+@border-color-base: @gray-3;
+@border-color-split: @gray-2;
+
+// 背景色
+@bg-color-base: @gray-1;
+@bg-color-light: @white;
+
+// 字体大小
+@font-size-xs: 10px;
+@font-size-sm: 12px;
+@font-size-md: 14px;
+@font-size-lg: 16px;
+@font-size-xl: 18px;
+@font-size-xxl: 20px;
+
+// 间距
+@spacing-xs: 4px;
+@spacing-sm: 8px;
+@spacing-md: 12px;
+@spacing-lg: 16px;
+@spacing-xl: 20px;
+@spacing-xxl: 24px;
+
+// 圆角
+@border-radius-sm: 2px;
+@border-radius-md: 4px;
+@border-radius-lg: 8px;
+@border-radius-xl: 16px;
+@border-radius-circle: 50%;
+
+// 阴影
+@box-shadow-base: 0 2px 8px rgba(0, 0, 0, 0.1);
+@box-shadow-up: 0 -2px 8px rgba(0, 0, 0, 0.1);
+@box-shadow-down: 0 2px 8px rgba(0, 0, 0, 0.1);
+@box-shadow-left: -2px 0 8px rgba(0, 0, 0, 0.1);
+@box-shadow-right: 2px 0 8px rgba(0, 0, 0, 0.1);
\ No newline at end of file
diff --git a/src/components/AppFooter.vue b/src/components/AppFooter.vue
new file mode 100644
index 0000000..cd4dac2
--- /dev/null
+++ b/src/components/AppFooter.vue
@@ -0,0 +1,73 @@
+