From b505f3648a10dd998ae9fe7a6edb1bf125d7d6a6 Mon Sep 17 00:00:00 2001 From: inleft <inleft@qq.com> Date: Fri, 21 Jan 2022 01:51:33 +0800 Subject: [PATCH] 主页结构调整 --- src/assets/md.less | 847 ++++++++++++++++++++-------------------- src/components/mini/mdDetail.vue | 18 src/components/group/boxRight.vue | 8 src/components/fixed/header.vue | 63 +- src/router/router.js | 11 src/components/swichLabel/main1-show.vue | 141 +---- src/config/router.config.js | 12 src/components/group/MyModal.vue | 75 +++ src/components/group/articleListScorll.vue | 6 src/components/layouts/baseLayout.vue | 12 src/App.vue | 1 src/components/group/tool.vue | 41 + 12 files changed, 664 insertions(+), 571 deletions(-) diff --git a/src/App.vue b/src/App.vue index a0d92db..c01b988 100644 --- a/src/App.vue +++ b/src/App.vue @@ -32,6 +32,7 @@ ::-webkit-scrollbar { /*滚动条整体样式*/ width: 8px; + height: 8px; /*高宽分别对应横竖滚动条的尺寸*/ } diff --git a/src/assets/md.less b/src/assets/md.less index 9298043..3e3c733 100644 --- a/src/assets/md.less +++ b/src/assets/md.less @@ -1,422 +1,425 @@ - body{ - margin: 0 auto; - font-family: "Microsoft YaHei", arial,sans-serif; - color: #444444; - line-height: 1; - padding: 30px; - } - @media screen and (min-width: 768px) { - body { - width: 748px; - margin: 10px auto; - } - } -h1, h2, h3, h4 { - color: #111111; - font-weight: 400; - margin-top: 1em; -} - -h1, h2, h3, h4, h5 { - font-family: Georgia, Palatino, serif; -} -h1, h2, h3, h4, h5, p , dl{ - margin-bottom: 16px; - padding: 0; -} -h1 { - font-size: 48px; - line-height: 54px; -} -h2 { - font-size: 36px; - line-height: 42px; -} -h1, h2 { - border-bottom: 1px solid #EFEAEA; - padding-bottom: 10px; -} -h3 { - font-size: 24px; - line-height: 30px; -} -h4 { - font-size: 21px; - line-height: 26px; -} -h5 { - font-size: 18px; - list-style: 23px; -} -a { - color: #0099ff; - margin: 0; - padding: 0; - vertical-align: baseline; -} -a:hover { - text-decoration: none; - color: #ff6600; -} -a:visited { - /*color: purple;*/ -} -ul, ol { - padding: 0; - padding-left: 24px; - margin: 0; -} -li { - line-height: 24px; -} -p, ul, ol { - font-size: 16px; - line-height: 24px; -} - -ol ol, ul ol { - list-style-type: lower-roman; -} - -/*pre { - padding: 0px 24px; - max-width: 800px; - white-space: pre-wrap; -} -code { - font-family: Consolas, Monaco, Andale Mono, monospace; - line-height: 1.5; - font-size: 13px; -}*/ - -code, pre { - border-radius: 3px; - background-color:#f7f7f7; - color: inherit; -} - -code { - font-family: Consolas, Monaco, Andale Mono, monospace; - margin: 0 2px; -} - -pre { - line-height: 1.7em; - overflow: auto; - padding: 6px 10px; - border-left: 5px solid #6CE26C; -} - -pre > code { - border: 0; - display: inline; - max-width: initial; - padding: 0; - margin: 0; - overflow: initial; - line-height: inherit; - font-size: .85em; - white-space: pre; - background: 0 0; - -} - -code { - color: #666555; -} - - -/** markdown preview plus 对于代码块的处理有些问题, 所以使用统一的颜色 */ -/*code .keyword { - color: #8959a8; -} - -code .number { - color: #f5871f; -} - -code .comment { - color: #998 -}*/ - -aside { - display: block; - float: right; - width: 390px; -} -blockquote { - border-left:.5em solid #eee; - padding: 0 0 0 2em; - margin-left:0; -} -blockquote cite { - font-size:14px; - line-height:20px; - color:#bfbfbf; -} -blockquote cite:before { - content: '\2014 \00A0'; -} - -blockquote p { - color: #666; -} -hr { - text-align: left; - color: #999; - height: 2px; - padding: 0; - margin: 16px 0; - background-color: #e7e7e7; - border: 0 none; -} - -dl { - padding: 0; -} - -dl dt { - padding: 10px 0; - margin-top: 16px; - font-size: 1em; - font-style: italic; - font-weight: bold; -} - -dl dd { - padding: 0 16px; - margin-bottom: 16px; -} - -dd { - margin-left: 0; -} - -/* Code below this line is copyright Twitter Inc. */ - -button, -input, -select, -textarea { - font-size: 100%; - margin: 0; - vertical-align: baseline; - *vertical-align: middle; -} -button, input { - line-height: normal; - *overflow: visible; -} -button::-moz-focus-inner, input::-moz-focus-inner { - border: 0; - padding: 0; -} -button, -input[type="button"], -input[type="reset"], -input[type="submit"] { - cursor: pointer; - -webkit-appearance: button; -} -input[type=checkbox], input[type=radio] { - cursor: pointer; -} -/* override default chrome & firefox settings */ -input:not([type="image"]), textarea { - -webkit-box-sizing: content-box; - -moz-box-sizing: content-box; - box-sizing: content-box; -} - -input[type="search"] { - -webkit-appearance: textfield; - -webkit-box-sizing: content-box; - -moz-box-sizing: content-box; - box-sizing: content-box; -} -input[type="search"]::-webkit-search-decoration { - -webkit-appearance: none; -} -label, -input, -select, -textarea { - font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; - font-size: 13px; - font-weight: normal; - line-height: normal; - margin-bottom: 18px; -} -input[type=checkbox], input[type=radio] { - cursor: pointer; - margin-bottom: 0; -} -input[type=text], -input[type=password], -textarea, -select { - display: inline-block; - width: 210px; - padding: 4px; - font-size: 13px; - font-weight: normal; - line-height: 18px; - height: 18px; - color: #808080; - border: 1px solid #ccc; - -webkit-border-radius: 3px; - -moz-border-radius: 3px; - border-radius: 3px; -} -select, input[type=file] { - height: 27px; - line-height: 27px; -} -textarea { - height: auto; -} -/* grey out placeholders */ -:-moz-placeholder { - color: #bfbfbf; -} -::-webkit-input-placeholder { - color: #bfbfbf; -} -input[type=text], -input[type=password], -select, -textarea { - -webkit-transition: border linear 0.2s, box-shadow linear 0.2s; - -moz-transition: border linear 0.2s, box-shadow linear 0.2s; - transition: border linear 0.2s, box-shadow linear 0.2s; - -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1); - -moz-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1); - box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1); -} -input[type=text]:focus, input[type=password]:focus, textarea:focus { - outline: none; - border-color: rgba(82, 168, 236, 0.8); - -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 8px rgba(82, 168, 236, 0.6); - -moz-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 8px rgba(82, 168, 236, 0.6); - box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 8px rgba(82, 168, 236, 0.6); -} -/* buttons */ -button { - display: inline-block; - padding: 4px 14px; - font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; - font-size: 13px; - line-height: 18px; - -webkit-border-radius: 4px; - -moz-border-radius: 4px; - border-radius: 4px; - -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); - -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); - box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); - background-color: #0064cd; - background-repeat: repeat-x; - background-image: -khtml-gradient(linear, left top, left bottom, from(#049cdb), to(#0064cd)); - background-image: -moz-linear-gradient(top, #049cdb, #0064cd); - background-image: -ms-linear-gradient(top, #049cdb, #0064cd); - background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #049cdb), color-stop(100%, #0064cd)); - background-image: -webkit-linear-gradient(top, #049cdb, #0064cd); - background-image: -o-linear-gradient(top, #049cdb, #0064cd); - background-image: linear-gradient(top, #049cdb, #0064cd); - color: #fff; - text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); - border: 1px solid #004b9a; - border-bottom-color: #003f81; - -webkit-transition: 0.1s linear all; - -moz-transition: 0.1s linear all; - transition: 0.1s linear all; - border-color: #0064cd #0064cd #003f81; - border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); -} -button:hover { - color: #fff; - background-position: 0 -15px; - text-decoration: none; -} -button:active { - -webkit-box-shadow: inset 0 3px 7px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); - -moz-box-shadow: inset 0 3px 7px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); - box-shadow: inset 0 3px 7px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); -} -button::-moz-focus-inner { - padding: 0; - border: 0; -} -table { - *border-collapse: collapse; /* IE7 and lower */ - border-spacing: 0; - width: 100%; -} -table { - border: solid #ccc 1px; - -moz-border-radius: 6px; - -webkit-border-radius: 6px; - border-radius: 6px; - /*-webkit-box-shadow: 0 1px 1px #ccc; - -moz-box-shadow: 0 1px 1px #ccc; - box-shadow: 0 1px 1px #ccc; */ -} -table tr:hover { - background: #fbf8e9; - -o-transition: all 0.1s ease-in-out; - -webkit-transition: all 0.1s ease-in-out; - -moz-transition: all 0.1s ease-in-out; - -ms-transition: all 0.1s ease-in-out; - transition: all 0.1s ease-in-out; -} -table td, .table th { - border-left: 1px solid #ccc; - border-top: 1px solid #ccc; - padding: 10px; - text-align: left; -} - -table th { - background-color: #dce9f9; - background-image: -webkit-gradient(linear, left top, left bottom, from(#ebf3fc), to(#dce9f9)); - background-image: -webkit-linear-gradient(top, #ebf3fc, #dce9f9); - background-image: -moz-linear-gradient(top, #ebf3fc, #dce9f9); - background-image: -ms-linear-gradient(top, #ebf3fc, #dce9f9); - background-image: -o-linear-gradient(top, #ebf3fc, #dce9f9); - background-image: linear-gradient(top, #ebf3fc, #dce9f9); - /*-webkit-box-shadow: 0 1px 0 rgba(255,255,255,.8) inset; - -moz-box-shadow:0 1px 0 rgba(255,255,255,.8) inset; - box-shadow: 0 1px 0 rgba(255,255,255,.8) inset;*/ - border-top: none; - text-shadow: 0 1px 0 rgba(255,255,255,.5); - padding: 5px; -} - -table td:first-child, table th:first-child { - border-left: none; -} - -table th:first-child { - -moz-border-radius: 6px 0 0 0; - -webkit-border-radius: 6px 0 0 0; - border-radius: 6px 0 0 0; -} -table th:last-child { - -moz-border-radius: 0 6px 0 0; - -webkit-border-radius: 0 6px 0 0; - border-radius: 0 6px 0 0; -} -table th:only-child{ - -moz-border-radius: 6px 6px 0 0; - -webkit-border-radius: 6px 6px 0 0; - border-radius: 6px 6px 0 0; -} -table tr:last-child td:first-child { - -moz-border-radius: 0 0 0 6px; - -webkit-border-radius: 0 0 0 6px; - border-radius: 0 0 0 6px; -} -table tr:last-child td:last-child { - -moz-border-radius: 0 0 6px 0; - -webkit-border-radius: 0 0 6px 0; - border-radius: 0 0 6px 0; -} +.markdown-body{ + body{ + margin: 0 auto; + font-family: "Microsoft YaHei", arial,sans-serif; + color: #444444; + line-height: 1; + padding: 30px; + } + @media screen and (min-width: 768px) { + body { + width: 748px; + margin: 10px auto; + } + } + h1, h2, h3, h4 { + color: #111111; + font-weight: 400; + margin-top: 1em; + } + + h1, h2, h3, h4, h5 { + font-family: Georgia, Palatino, serif; + } + h1, h2, h3, h4, h5, p , dl{ + margin-bottom: 16px; + padding: 0; + } + h1 { + font-size: 38px; + line-height: 54px; + } + h2 { + font-size: 36px; + line-height: 42px; + } + h1, h2 { + border-bottom: 1px solid #EFEAEA; + padding-bottom: 10px; + } + h3 { + font-size: 24px; + line-height: 30px; + } + h4 { + font-size: 21px; + line-height: 26px; + } + h5 { + font-size: 18px; + list-style: 23px; + } + a { + color: #0099ff; + margin: 0; + padding: 0; + vertical-align: baseline; + } + a:hover { + text-decoration: none; + color: #ff6600; + } + a:visited { + /*color: purple;*/ + } + ul, ol { + padding: 0; + padding-left: 24px; + margin: 0; + } + li { + line-height: 24px; + } + p, ul, ol { + font-size: 16px; + line-height: 24px; + } + + ol ol, ul ol { + list-style-type: lower-roman; + } + + /*pre { + padding: 0px 24px; + max-width: 800px; + white-space: pre-wrap; + } + code { + font-family: Consolas, Monaco, Andale Mono, monospace; + line-height: 1.5; + font-size: 13px; + }*/ + + code, pre { + border-radius: 3px; + background-color:#f7f7f7; + color: inherit; + } + + code { + font-family: Consolas, Monaco, Andale Mono, monospace; + margin: 0 2px; + } + + pre { + line-height: 1.7em; + overflow: auto; + padding: 6px 10px; + border-left: 5px solid #6CE26C; + } + + pre > code { + border: 0; + display: inline; + max-width: initial; + padding: 0; + margin: 0; + overflow: initial; + line-height: inherit; + font-size: .85em; + white-space: pre; + background: 0 0; + + } + + code { + color: #666555; + } + + + /** markdown preview plus 对于代码块的处理有些问题, 所以使用统一的颜色 */ + /*code .keyword { + color: #8959a8; + } + + code .number { + color: #f5871f; + } + + code .comment { + color: #998 + }*/ + + aside { + display: block; + float: right; + width: 390px; + } + blockquote { + border-left:.5em solid #eee; + padding: 0 0 0 2em; + margin-left:0; + } + blockquote cite { + font-size:14px; + line-height:20px; + color:#bfbfbf; + } + blockquote cite:before { + content: '\2014 \00A0'; + } + + blockquote p { + color: #666; + } + hr { + text-align: left; + color: #999; + height: 2px; + padding: 0; + margin: 16px 0; + background-color: #e7e7e7; + border: 0 none; + } + + dl { + padding: 0; + } + + dl dt { + padding: 10px 0; + margin-top: 16px; + font-size: 1em; + font-style: italic; + font-weight: bold; + } + + dl dd { + padding: 0 16px; + margin-bottom: 16px; + } + + dd { + margin-left: 0; + } + + /* Code below this line is copyright Twitter Inc. */ + + button, + input, + select, + textarea { + font-size: 100%; + margin: 0; + vertical-align: baseline; + *vertical-align: middle; + } + button, input { + line-height: normal; + *overflow: visible; + } + button::-moz-focus-inner, input::-moz-focus-inner { + border: 0; + padding: 0; + } + button, + input[type="button"], + input[type="reset"], + input[type="submit"] { + cursor: pointer; + -webkit-appearance: button; + } + input[type=checkbox], input[type=radio] { + cursor: pointer; + } + /* override default chrome & firefox settings */ + input:not([type="image"]), textarea { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; + } + + input[type="search"] { + -webkit-appearance: textfield; + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; + } + input[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; + } + label, + input, + select, + textarea { + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 13px; + font-weight: normal; + line-height: normal; + margin-bottom: 18px; + } + input[type=checkbox], input[type=radio] { + cursor: pointer; + margin-bottom: 0; + } + input[type=text], + input[type=password], + textarea, + select { + display: inline-block; + width: 210px; + padding: 4px; + font-size: 13px; + font-weight: normal; + line-height: 18px; + height: 18px; + color: #808080; + border: 1px solid #ccc; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; + } + select, input[type=file] { + height: 27px; + line-height: 27px; + } + textarea { + height: auto; + } + /* grey out placeholders */ + :-moz-placeholder { + color: #bfbfbf; + } + ::-webkit-input-placeholder { + color: #bfbfbf; + } + input[type=text], + input[type=password], + select, + textarea { + -webkit-transition: border linear 0.2s, box-shadow linear 0.2s; + -moz-transition: border linear 0.2s, box-shadow linear 0.2s; + transition: border linear 0.2s, box-shadow linear 0.2s; + -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1); + -moz-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1); + box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1); + } + input[type=text]:focus, input[type=password]:focus, textarea:focus { + outline: none; + border-color: rgba(82, 168, 236, 0.8); + -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 8px rgba(82, 168, 236, 0.6); + -moz-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 8px rgba(82, 168, 236, 0.6); + box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 8px rgba(82, 168, 236, 0.6); + } + /* buttons */ + button { + display: inline-block; + padding: 4px 14px; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 13px; + line-height: 18px; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); + -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); + background-color: #0064cd; + background-repeat: repeat-x; + background-image: -khtml-gradient(linear, left top, left bottom, from(#049cdb), to(#0064cd)); + background-image: -moz-linear-gradient(top, #049cdb, #0064cd); + background-image: -ms-linear-gradient(top, #049cdb, #0064cd); + background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #049cdb), color-stop(100%, #0064cd)); + background-image: -webkit-linear-gradient(top, #049cdb, #0064cd); + background-image: -o-linear-gradient(top, #049cdb, #0064cd); + background-image: linear-gradient(top, #049cdb, #0064cd); + color: #fff; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + border: 1px solid #004b9a; + border-bottom-color: #003f81; + -webkit-transition: 0.1s linear all; + -moz-transition: 0.1s linear all; + transition: 0.1s linear all; + border-color: #0064cd #0064cd #003f81; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); + } + button:hover { + color: #fff; + background-position: 0 -15px; + text-decoration: none; + } + button:active { + -webkit-box-shadow: inset 0 3px 7px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); + -moz-box-shadow: inset 0 3px 7px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); + box-shadow: inset 0 3px 7px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); + } + button::-moz-focus-inner { + padding: 0; + border: 0; + } + table { + *border-collapse: collapse; /* IE7 and lower */ + border-spacing: 0; + width: 100%; + } + table { + border: solid #ccc 1px; + -moz-border-radius: 6px; + -webkit-border-radius: 6px; + border-radius: 6px; + /*-webkit-box-shadow: 0 1px 1px #ccc; + -moz-box-shadow: 0 1px 1px #ccc; + box-shadow: 0 1px 1px #ccc; */ + } + table tr:hover { + background: #fbf8e9; + -o-transition: all 0.1s ease-in-out; + -webkit-transition: all 0.1s ease-in-out; + -moz-transition: all 0.1s ease-in-out; + -ms-transition: all 0.1s ease-in-out; + transition: all 0.1s ease-in-out; + } + table td, .table th { + border-left: 1px solid #ccc; + border-top: 1px solid #ccc; + padding: 10px; + text-align: left; + } + + table th { + background-color: #dce9f9; + background-image: -webkit-gradient(linear, left top, left bottom, from(#ebf3fc), to(#dce9f9)); + background-image: -webkit-linear-gradient(top, #ebf3fc, #dce9f9); + background-image: -moz-linear-gradient(top, #ebf3fc, #dce9f9); + background-image: -ms-linear-gradient(top, #ebf3fc, #dce9f9); + background-image: -o-linear-gradient(top, #ebf3fc, #dce9f9); + background-image: linear-gradient(top, #ebf3fc, #dce9f9); + /*-webkit-box-shadow: 0 1px 0 rgba(255,255,255,.8) inset; + -moz-box-shadow:0 1px 0 rgba(255,255,255,.8) inset; + box-shadow: 0 1px 0 rgba(255,255,255,.8) inset;*/ + border-top: none; + text-shadow: 0 1px 0 rgba(255,255,255,.5); + padding: 5px; + } + + table td:first-child, table th:first-child { + border-left: none; + } + + table th:first-child { + -moz-border-radius: 6px 0 0 0; + -webkit-border-radius: 6px 0 0 0; + border-radius: 6px 0 0 0; + } + table th:last-child { + -moz-border-radius: 0 6px 0 0; + -webkit-border-radius: 0 6px 0 0; + border-radius: 0 6px 0 0; + } + table th:only-child{ + -moz-border-radius: 6px 6px 0 0; + -webkit-border-radius: 6px 6px 0 0; + border-radius: 6px 6px 0 0; + } + table tr:last-child td:first-child { + -moz-border-radius: 0 0 0 6px; + -webkit-border-radius: 0 0 0 6px; + border-radius: 0 0 0 6px; + } + table tr:last-child td:last-child { + -moz-border-radius: 0 0 6px 0; + -webkit-border-radius: 0 0 6px 0; + border-radius: 0 0 6px 0; + } + +} \ No newline at end of file diff --git a/src/components/fixed/header.vue b/src/components/fixed/header.vue index 8011ac1..8188297 100644 --- a/src/components/fixed/header.vue +++ b/src/components/fixed/header.vue @@ -1,19 +1,16 @@ <template> <a-row type="flex" justify="start"> <a-col v-bind="showSmall"> - <router-link to="/main1">Home »</router-link> - </a-col> - <a-col v-bind="showSmall"> - <router-link to="/main2">乐谱搜索 »</router-link> - </a-col> - <a-col v-bind="showSmall"> - <router-link to="/main3">我的网盘 »</router-link> - </a-col> - <a-col v-bind="showSmall"> - <router-link to="/main4">友人帐 »</router-link> + <div class="menu"> + <router-link to="/main1">Home »</router-link> + <router-link to="/main2">乐谱搜索 »</router-link> + <router-link to="/main3">我的网盘 »</router-link> + <router-link to="/main4">友人帐 »</router-link> + </div> </a-col> <a-col v-bind="showMain"> - <a-auto-complete ref="mySearch" v-bind="search" @select="onSelect" @search="onSearch" @change="onChange"> + <a-auto-complete v-model="search.value" :data-source="search.dataSource" ref="mySearch" v-bind="search" + @select="onSelect" @search="onSearch" @change="onChange"> <a-input @keydown.enter="onSelect"> <a-icon slot="suffix" type="search" class="certain-category-icon" /> </a-input> @@ -71,23 +68,33 @@ allowClear: true, // autoFocus: true, backfill: true, + value: '', dataSource: [], }, showSmall: { - xs: 6, - sm: 4, - md: 4, - lg: 4, - xl: 4, - xxl: 4, + xs: 24, + sm: 18, + md: 18, + lg: 18, + xl: 18, + xxl: 18, }, showMain: { xs: 0, - sm: 0, - md: 2, - lg: 2, - xl: 2, - xxl: 2, + sm: 6, + md: 6, + lg: { + span: 3, + offset: 3 + }, + xl: { + span: 3, + offset: 3 + }, + xxl: { + span: 3, + offset: 3 + }, } } @@ -103,12 +110,12 @@ console.log(e); }, onSearch(searchText) { - this.dataSource = !searchText ? [] : [searchText, searchText.repeat(2), searchText.repeat(3)]; + this.search.dataSource = !searchText ? [] : [searchText, searchText.repeat(2), searchText.repeat(3)]; console.log("补全.."); }, onSelect(value) { console.log('回车', value); - this.$message.info("回车") + this.$message.info("回车,内容为" + value) }, onChange(value) { console.log('修改', value); @@ -120,3 +127,11 @@ }, } </script> +<style lang="less" scoped> + .menu { + a { + margin-left: 10px; + } + + } +</style> diff --git a/src/components/group/MyModal.vue b/src/components/group/MyModal.vue new file mode 100644 index 0000000..b0e3233 --- /dev/null +++ b/src/components/group/MyModal.vue @@ -0,0 +1,75 @@ +<template> + <div class="myModal"> + <a-modal v-model="visible" title="日志添加" on-ok="handleOk" + :bodyStyle="{'overflow':'overlay','maxHeight': '550px'}"> + <template slot="footer"> + <a-button key="reset" @click="reset" type="danger"> + 擦掉重来 + </a-button> + <a-button key="back" @click="handleCancel"> + 歇会 + </a-button> + <a-button key="submit" type="primary" :loading="loading" @click="handleOk"> + 完事<span style="font-size: 10px;">儿</span>.. + </a-button> + </template> + <box10 ref="modalBox"></box10> + </a-modal> + </div> + +</template> + +<script> + import box10 from "../mini/box10-add.vue" + export default { + components: { + box10 + }, + data() { + return { + visible: false, + loading: false, + } + }, + methods: { + getCalendarContainer(trigger) { + return this.$refs.myModal; + }, + showModal() { + this.visible = true; + }, + handleOk(e) { + console.log(this.$refs.modalBox.form); + var res = this.$refs.modalBox.$refs.myForm.validate(valid => { + if (valid) { + this.$message.info("校验通过") + } else { + this.$message.info("校验失败") + return false; + } + }); + + + if (!res) return; + + this.$message.info("提交表单") + + this.loading = true; + setTimeout(() => { + this.visible = false; + this.loading = false; + }, 3000); + }, + reset(e) { + var res = this.$refs.modalBox.$refs.myForm.resetFields() + }, + handleCancel(e) { + this.visible = false; + }, + + }, + } +</script> + +<style> +</style> diff --git a/src/components/group/articleListScorll.vue b/src/components/group/articleListScorll.vue index a0f173c..a2f63dd 100644 --- a/src/components/group/articleListScorll.vue +++ b/src/components/group/articleListScorll.vue @@ -15,9 +15,7 @@ :defaultPageSize="pageSize" :total="total" /> </div> </a-row> - <a-back-top> - <a-icon type="up" />回到顶部 - </a-back-top> + </div> </template> <script> @@ -88,7 +86,7 @@ console.log(this.current); console.log(this.busy); - if (data.length > 15) { + if (data.length > 3) { this.$message.warning('没有更多了'); this.busy = true; this.loading = false; diff --git a/src/components/group/boxRight.vue b/src/components/group/boxRight.vue index bc15b90..e6bbe27 100644 --- a/src/components/group/boxRight.vue +++ b/src/components/group/boxRight.vue @@ -1,18 +1,18 @@ <template> <div class="blog-right-side fadeInRight"> <div class="blog-cell "> + <box4 v-bind="vo4"></box4> + </div> + <!-- <div class="blog-cell "> <box4 v-bind="vo1"></box4> </div> <div class="blog-cell "> <box4 v-bind="vo2"></box4> - </div> + </div> --> <div class="blog-cell "> <box4 v-bind="vo3"></box4> <div class="blog-right-side-exchange"> </div> - </div> - <div class="blog-cell "> - <box4 v-bind="vo4"></box4> </div> </div> diff --git a/src/components/group/tool.vue b/src/components/group/tool.vue new file mode 100644 index 0000000..88b4c2b --- /dev/null +++ b/src/components/group/tool.vue @@ -0,0 +1,41 @@ +<template> + <a-affix :offset-top="600"> + + <div style="padding-left:5px;"> + <a-button @click="showDrawer1"> + 抽屉1 + </a-button> + <!-- <a-button @click="showDrawer2"> + 抽屉2 + </a-button> --> + <a-button @click="showModal"> + 日志 + <a-icon type="plus-circle" style="margin-left: 0px;" /> + </a-button> + + <a-button> + 工具 + <a-icon type="tool" style="margin-left: 0px;" /> + </a-button> + </div> + </a-affix> +</template> + +<script> + export default { + data() { + return {} + }, + methods: { + showDrawer1() { + this.$emit('showDrawer1') + }, + showModal() { + this.$emit('showModal') + } + }, + } +</script> + +<style> +</style> diff --git a/src/components/layouts/baseLayout.vue b/src/components/layouts/baseLayout.vue index b344246..a168c40 100644 --- a/src/components/layouts/baseLayout.vue +++ b/src/components/layouts/baseLayout.vue @@ -5,12 +5,17 @@ <tag-Header /> </a-layout-header> - <router-view ></router-view> + <router-view></router-view> <a-layout-footer> <AplayerBox /> <tagFooter /> </a-layout-footer> + + <a-back-top> + <a-icon type="up" />回到顶部 + </a-back-top> + </a-layout> </template> @@ -30,7 +35,7 @@ } }, methods: { - + // 下载文件 down: function() { console.log(111); @@ -64,11 +69,8 @@ .ant-layout {} .ant-layout-header { - - // background-color: #ffffff; backdrop-filter: saturate(180%) blur(1em); -webkit-backdrop-filter: blur(5px); - background: linear-gradient(90deg, rgba(247, 149, 51, 0.101961) 0, rgba(243, 112, 85, 0.101961) 15%, rgba(239, 78, 123, 0.101961) 30%, rgba(161, 102, 171, 0.101961) 44%, rgba(80, 115, 184, 0.101961) 58%, rgba(16, 152, 173, 0.101961) 72%, rgba(7, 179, 155, 0.101961) 86%, rgba(109, 186, 130, 0.101961) 100%); } diff --git a/src/components/mini/mdDetail.vue b/src/components/mini/mdDetail.vue index d681f69..33fd5d5 100644 --- a/src/components/mini/mdDetail.vue +++ b/src/components/mini/mdDetail.vue @@ -1,11 +1,11 @@ <template> - <div class="article-meta"> - <a-button @click="back"> + <div class="article-meta "> + <a-button @click="back" style="position: absolute;"> <a-icon type="left" /> </a-button> - <a-divider orientation="left"> + <!-- <a-divider orientation="left"> 文章详情 - </a-divider> + </a-divider> --> <div class="markdown-body article-detail"> <vue-markdown :source="source"></vue-markdown> </div> @@ -40,10 +40,14 @@ } </script> -<style scoped > - /* @import '../../assets/md.less'; */ +<style lang="less"> + @import '../../assets/md.less'; - + .markdown-body { + padding: 10px 20px 10px 20px; + box-shadow: 8px 8px 18px rgba(0, 0, 0, 0.1), + -8px -8px 18px #ffffff; + } /* #test{ padding-left: 25%; diff --git a/src/components/swichLabel/main1-show.vue b/src/components/swichLabel/main1-show.vue index d9ab8d2..4e0c085 100644 --- a/src/components/swichLabel/main1-show.vue +++ b/src/components/swichLabel/main1-show.vue @@ -1,61 +1,40 @@ <template> <div> + <MyModal ref="myModal"></MyModal> + <div class="blog-drawer"> <a-drawer placement="left" :closable="false" :visible="visible1" :getContainer="'body'" :after-visible-change="afterVisibleChange" @close="onClose1" :zIndex="90" :width=270 - :bodyStyle="{padding:'0px'}" :wrapStyle="{padding:'0px',top:'60px'}"> + :bodyStyle="{padding:'0px'}" + :wrapStyle="{padding:'0px',top:'60px !important','height':'calc(100% - 60px) !important'}"> <boxLeft></boxLeft> - </a-drawer> - - <a-drawer placement="right" :closable="false" :visible="visible2" :getContainer="'body'" - :after-visible-change="afterVisibleChange" @close="onClose2" :zIndex="90" :width=270 - :bodyStyle="{padding:'0px'}" :wrapStyle="{padding:'0px',top:'60px'}"> <boxRight></boxRight> </a-drawer> - <a-row> - <a-col v-bind="colApiLeft"> - <div class="myModal"> - <a-modal v-model="visible" title="日志添加" on-ok="handleOk"> - <template slot="footer"> - <a-button key="reset" @click="reset" type="danger"> - 擦掉重来 - </a-button> - <a-button key="back" @click="handleCancel"> - 歇会 - </a-button> - <a-button key="submit" type="primary" :loading="loading" @click="handleOk"> - 完事<span style="font-size: 10px;">儿</span>.. - </a-button> - </template> - <box10 ref="modalBox"></box10> - </a-modal> - </div> - </a-col> - </a-row> </div> + <div class="blog-main"> + <a-row> <a-col v-bind="colApiLeft"> <boxLeft></boxLeft> + <boxRight></boxRight> </a-col> - <a-col v-bind="colApiMain "> - <a-button @click="showDrawer1"> - 小抽屉1 - </a-button> - <a-button @click="showDrawer2"> - 小抽屉2 - </a-button> - <a-button @click="showModal"> - 日志 - <a-icon type="plus-circle" style="margin-left: 0px;" /> - </a-button> - <tempFriendBox></tempFriendBox> + <a-col v-bind="colApiMain "> + <a-col v-bind="colMini" :style="{'position':'absolute','right':'30px'}"> + <a-affix :offset-top="550"> + <a-button @click="showDrawer1"> + 抽屉1 + </a-button> + </a-affix> + </a-col> + <router-view class="fade"></router-view> </a-col> <a-col v-bind="colApiRight" ref="myDrawer"> - <boxRight></boxRight> + <!-- <boxRight></boxRight> --> + <tool @showModal="showModal" @showDrawer1="showDrawer1"></tool> </a-col> </a-row> </div> @@ -65,75 +44,47 @@ <script> import tempFriendBox from "../group/tempFriendBox.vue" - import box10 from "../mini/box10-add.vue" import boxLeft from "../group/boxLeft.vue" import boxRight from "../group/boxRight.vue" import articleListScorll from "../group/articleListScorll.vue" + import tool from "../group/tool.vue" + import MyModal from "../group/MyModal.vue" export default { components: { tempFriendBox, - box10, boxLeft, boxRight, articleListScorll, + tool, + MyModal, }, methods: { - getCalendarContainer(trigger) { - return this.$refs.myModal; - }, showModal() { - this.visible = true; - }, - handleOk(e) { - console.log(this.$refs.modalBox.form); - var res = this.$refs.modalBox.$refs.myForm.validate(valid => { - if (valid) { - this.$message.info("校验通过") - } else { - this.$message.info("校验失败") - return false; - } - }); - - - if (!res) return; - - this.$message.info("提交表单") - - this.loading = true; - setTimeout(() => { - this.visible = false; - this.loading = false; - }, 3000); - }, - reset(e) { - var res = this.$refs.modalBox.$refs.myForm.resetFields() - }, - handleCancel(e) { - this.visible = false; + this.$refs.myModal.showModal(); }, afterVisibleChange(val) {}, showDrawer1() { this.visible1 = true; }, - showDrawer2() { - this.visible2 = true; - }, onClose1() { this.visible1 = false; }, - onClose2() { - this.visible2 = false; - }, + }, data() { return { - loading: false, - visible: false, visible1: false, visible2: false, + colMini: { + xs: 1, + sm: 1, + md: 1, + lg: 0, + xl: 0, + xxl: 0 + }, colApiLeft: { xs: 0, sm: 0, @@ -157,15 +108,9 @@ xs: 0, sm: 0, md: 0, - lg: 0, - xl: { - span: 5, - offset: 1, - }, - xxl: { - span: 4, - offset: 1, - }, + lg: 1, + xl: 1, + xxl: 1, }, colApiMain: { xs: 24, @@ -174,7 +119,7 @@ offset: 2, }, md: { - span: 14, + span: 15, offset: 1, }, lg: { @@ -182,12 +127,12 @@ offset: 2, }, xl: { - span: 9, - offset: 1, + span: 13, + offset: 2, }, xxl: { - span: 8, - offset: 1, + span: 11, + offset: 2, }, } @@ -208,10 +153,6 @@ min-height: 780px; } - .article-detail { - max-height: 750px; - overflow: overlay; - } .blog-main { margin-top: 80px; @@ -284,7 +225,7 @@ padding-bottom: 20px; overflow: hidden; // box-shadow: 1px 1px 1px 2px #00000059; - + // -webkit-box-shadow: 0 12px 15px 0 rgba(0, 0, 0, 0.24), 0 17px 50px 0 rgba(0, 0, 0, 0.19); // box-shadow: 0 12px 15px 0 rgba(0, 0, 0, 0.24), 0 17px 50px 0 rgba(0, 0, 0, 0.19); diff --git a/src/config/router.config.js b/src/config/router.config.js index 81c4de3..71f7d62 100644 --- a/src/config/router.config.js +++ b/src/config/router.config.js @@ -10,6 +10,7 @@ import box1 from '../components/mini/box1-info.vue' import tagTime from '../components/mini/tagTime.vue' import tagInfo from '../components/mini/tagInfo.vue' +import boxFriend from '../components/mini/box-friend.vue' import mdDetail from '../components/mini/mdDetail.vue' @@ -28,7 +29,7 @@ children: [{ path: '/', component: articleList, - props:true + props: true }, { path: '/box1', @@ -37,7 +38,7 @@ { path: '/tagTime', component: tagTime, - props:true + props: true }, { path: '/tagInfo', @@ -46,6 +47,9 @@ { path: '/mdDetail', component: mdDetail, + }, { + path: '/main4', + component: boxFriend, } ] }, @@ -57,7 +61,7 @@ component: articleList, }] }, - + { path: '/main2', component: main2, @@ -70,7 +74,7 @@ path: '/main4', component: main4, }, - + ] }, diff --git a/src/router/router.js b/src/router/router.js index 1522bca..de20598 100644 --- a/src/router/router.js +++ b/src/router/router.js @@ -12,7 +12,16 @@ /*实例化路由*/ const router = new Router({ mode: "history", //模式修改 - routes: asyncRouterMap + routes: asyncRouterMap, + scrollBehavior (to, from, savedPosition) { + + //路由切换是否滚动到顶部 + if (savedPosition) { + return savedPosition + } else { + return { x: 0, y: 0 } + } + } }) router.beforeEach((to, from, next) => { -- Gitblit v1.9.1