|
|
|
@ -1,6 +1,6 @@ |
|
|
|
|
<template> |
|
|
|
|
<!-- 课程预览 --> |
|
|
|
|
<div> |
|
|
|
|
<div class="wrap"> |
|
|
|
|
<el-card shadow="hover" |
|
|
|
|
class="m-b-20"> |
|
|
|
|
<div class="flex-between"> |
|
|
|
@ -9,102 +9,118 @@ |
|
|
|
|
</div> |
|
|
|
|
</el-card> |
|
|
|
|
|
|
|
|
|
<el-card shadow="hover" |
|
|
|
|
class="m-b-20" |
|
|
|
|
style="background: none;"> |
|
|
|
|
<div class="flex"> |
|
|
|
|
<div class="cover" |
|
|
|
|
:class="{'is-word': showMask1}"> |
|
|
|
|
<img v-if="coverUrl" |
|
|
|
|
:src="coverUrl" |
|
|
|
|
alt="" |
|
|
|
|
width="100%" |
|
|
|
|
height="100%"> |
|
|
|
|
<template v-else-if="iframeSrc"> |
|
|
|
|
<iframe class="inner fileIframe" |
|
|
|
|
id="fileIframe" |
|
|
|
|
:src="iframeSrc" |
|
|
|
|
frameborder="0"></iframe> |
|
|
|
|
<template v-if="showMask"> |
|
|
|
|
<div class="mask" |
|
|
|
|
style="width: 500px;height: 30px;top: 53px;right: 320px"></div> |
|
|
|
|
<div class="mask" |
|
|
|
|
style="width: 175px;height: 30px;top: 53px;right: 5px"></div> |
|
|
|
|
</template> |
|
|
|
|
<template v-if="showMask1"> |
|
|
|
|
<div class="word-mask" |
|
|
|
|
style="height: 40px;"></div> |
|
|
|
|
<div class="word-mask2" |
|
|
|
|
style="top: 55px;left: 28%;width: 44%;height: calc(100% - 80px);"></div> |
|
|
|
|
</template> |
|
|
|
|
<template v-if="showMask2"> |
|
|
|
|
<div class="excel-mask1" |
|
|
|
|
style="height: 48px;"></div> |
|
|
|
|
</template> |
|
|
|
|
<div class="flex"> |
|
|
|
|
<div class="cover" |
|
|
|
|
:class="{'is-word': showMask1}"> |
|
|
|
|
<img v-if="coverUrl" |
|
|
|
|
:src="coverUrl" |
|
|
|
|
alt="" |
|
|
|
|
width="100%" |
|
|
|
|
height="100%"> |
|
|
|
|
<template v-else-if="iframeSrc"> |
|
|
|
|
<iframe class="inner fileIframe" |
|
|
|
|
id="fileIframe" |
|
|
|
|
:src="iframeSrc" |
|
|
|
|
frameborder="0"></iframe> |
|
|
|
|
<template v-if="showMask"> |
|
|
|
|
<div class="mask" |
|
|
|
|
style="width: 500px;height: 30px;top: 53px;right: 320px"></div> |
|
|
|
|
<div class="mask" |
|
|
|
|
style="width: 175px;height: 30px;top: 53px;right: 5px"></div> |
|
|
|
|
</template> |
|
|
|
|
<div class="pdf inner" |
|
|
|
|
v-else-if="pdfSrc"> |
|
|
|
|
<p class="arrow"> |
|
|
|
|
<span @click="changePdfPage(0)" |
|
|
|
|
class="turn el-icon-arrow-left" |
|
|
|
|
:class="{grey: currentPage==1}"></span> |
|
|
|
|
{{ currentPage }} / {{ pageCount }} |
|
|
|
|
<span @click="changePdfPage(1)" |
|
|
|
|
class="turn el-icon-arrow-right" |
|
|
|
|
:class="{grey: currentPage==pageCount}"></span> |
|
|
|
|
</p> |
|
|
|
|
<pdf class="pdf-wrap" |
|
|
|
|
:src="pdfSrc" |
|
|
|
|
:page="currentPage" |
|
|
|
|
@num-pages="pageCount=$event" |
|
|
|
|
@page-loaded="currentPage=$event" |
|
|
|
|
@loaded="loadPdfHandler"> |
|
|
|
|
</pdf> |
|
|
|
|
</div> |
|
|
|
|
<div class="inner" |
|
|
|
|
v-else-if="playAuth"> |
|
|
|
|
<div class="video_wid" |
|
|
|
|
id="player"></div> |
|
|
|
|
</div> |
|
|
|
|
<template v-if="showMask1"> |
|
|
|
|
<div class="word-mask" |
|
|
|
|
style="height: 40px;"></div> |
|
|
|
|
<div class="word-mask2" |
|
|
|
|
style="top: 55px;left: 28%;width: 44%;height: calc(100% - 80px);"></div> |
|
|
|
|
</template> |
|
|
|
|
<template v-if="showMask2"> |
|
|
|
|
<div class="excel-mask1" |
|
|
|
|
style="height: 48px;"></div> |
|
|
|
|
</template> |
|
|
|
|
</template> |
|
|
|
|
<div class="pdf inner" |
|
|
|
|
v-else-if="pdfSrc"> |
|
|
|
|
<p class="arrow"> |
|
|
|
|
<span @click="changePdfPage(0)" |
|
|
|
|
class="turn el-icon-arrow-left" |
|
|
|
|
:class="{grey: currentPage==1}"></span> |
|
|
|
|
{{ currentPage }} / {{ pageCount }} |
|
|
|
|
<span @click="changePdfPage(1)" |
|
|
|
|
class="turn el-icon-arrow-right" |
|
|
|
|
:class="{grey: currentPage==pageCount}"></span> |
|
|
|
|
</p> |
|
|
|
|
<pdf class="pdf-wrap" |
|
|
|
|
:src="pdfSrc" |
|
|
|
|
:page="currentPage" |
|
|
|
|
@num-pages="pageCount=$event" |
|
|
|
|
@page-loaded="currentPage=$event" |
|
|
|
|
@loaded="loadPdfHandler"> |
|
|
|
|
</pdf> |
|
|
|
|
</div> |
|
|
|
|
<div class="catalog flex-1"> |
|
|
|
|
<div class="list"> |
|
|
|
|
<h4 class="title">{{ courseName }}</h4> |
|
|
|
|
<div class="desc-wrap"> |
|
|
|
|
<div class="desc" |
|
|
|
|
:class="{active: desShrink}" |
|
|
|
|
v-html="description"></div> |
|
|
|
|
<i class="arrow" |
|
|
|
|
<div class="inner" |
|
|
|
|
v-else-if="playAuth"> |
|
|
|
|
<div class="video_wid" |
|
|
|
|
id="player"></div> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
<div class="catalog flex-1"> |
|
|
|
|
<div class="list"> |
|
|
|
|
<h4 class="title">{{ courseName }}</h4> |
|
|
|
|
<div class="desc-wrap"> |
|
|
|
|
<div class="desc" |
|
|
|
|
:class="{active: desShrink}" |
|
|
|
|
v-if="description.length > 40"> |
|
|
|
|
<span>...</span> |
|
|
|
|
<img src="@/assets/img/arrow-down.png" |
|
|
|
|
alt="" |
|
|
|
|
@click="desShrink = !desShrink"> |
|
|
|
|
</i> |
|
|
|
|
</div> |
|
|
|
|
<div class="chapters"> |
|
|
|
|
<template v-if="videoList.length"> |
|
|
|
|
<div class="chapter" |
|
|
|
|
v-for="(item,index) in videoList" |
|
|
|
|
:key="index"> |
|
|
|
|
<div class="chapterName">{{ item.name }}</div> |
|
|
|
|
<div class="section" |
|
|
|
|
v-if="item.subsectionList.length"> |
|
|
|
|
<div v-for="(section,i) in item.subsectionList" |
|
|
|
|
:key="i" |
|
|
|
|
@click="preview(section, item.name)"> |
|
|
|
|
<p class="sectionName" |
|
|
|
|
:class="{active: curLink === `${item.name}${section.name}`}">{{ section.name }}</p> |
|
|
|
|
</div> |
|
|
|
|
v-html="description"></div> |
|
|
|
|
<i class="arrow" |
|
|
|
|
:class="{active: desShrink}" |
|
|
|
|
v-if="description.length > 40"> |
|
|
|
|
<span>...</span> |
|
|
|
|
<img src="@/assets/img/arrow-down.png" |
|
|
|
|
alt="" |
|
|
|
|
@click="desShrink = !desShrink"> |
|
|
|
|
</i> |
|
|
|
|
</div> |
|
|
|
|
<div class="chapters"> |
|
|
|
|
<template v-if="videoList.length"> |
|
|
|
|
<div class="chapter" |
|
|
|
|
v-for="(item,index) in videoList" |
|
|
|
|
:key="index"> |
|
|
|
|
<div class="chapterName">{{ item.name }}</div> |
|
|
|
|
<div class="section" |
|
|
|
|
v-if="item.subsectionList.length"> |
|
|
|
|
<div v-for="(section,i) in item.subsectionList" |
|
|
|
|
:key="i" |
|
|
|
|
@click="preview(section, item.name)"> |
|
|
|
|
<p class="sectionName" |
|
|
|
|
:class="{active: curLink === `${item.name}${section.name}`}"> |
|
|
|
|
<img v-if="section.fileType === 'pptx'" |
|
|
|
|
src="@/assets/img/exts/ppt.png" |
|
|
|
|
alt=""> |
|
|
|
|
<img v-else-if="section.fileType === 'mp4'" |
|
|
|
|
src="@/assets/img/exts/video.png" |
|
|
|
|
alt=""> |
|
|
|
|
<img v-else-if="section.fileType === 'doc' || section.fileType === 'docx'" |
|
|
|
|
src="@/assets/img/exts/word.png" |
|
|
|
|
alt=""> |
|
|
|
|
<img v-else-if="section.fileType === 'txt'" |
|
|
|
|
src="@/assets/img/exts/txt.png" |
|
|
|
|
alt=""> |
|
|
|
|
<img v-else-if="section.fileType === 'pdf'" |
|
|
|
|
src="@/assets/img/exts/pdf.png" |
|
|
|
|
alt=""> |
|
|
|
|
<img v-else |
|
|
|
|
src="@/assets/img/exts/pic.png" |
|
|
|
|
alt=""> |
|
|
|
|
{{ section.name }} |
|
|
|
|
</p> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</template> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</template> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</el-card> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</template> |
|
|
|
|
|
|
|
|
@ -285,30 +301,42 @@ export default { |
|
|
|
|
</script> |
|
|
|
|
|
|
|
|
|
<style lang="scss" scoped> |
|
|
|
|
.wrap { |
|
|
|
|
padding: 0 200px; |
|
|
|
|
} |
|
|
|
|
$height: 700px; |
|
|
|
|
.video_wid, |
|
|
|
|
.cover { |
|
|
|
|
position: relative; |
|
|
|
|
width: 76%; |
|
|
|
|
max-width: 1400px; |
|
|
|
|
height: $height !important; |
|
|
|
|
border: 0; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.page { |
|
|
|
|
/deep/.des { |
|
|
|
|
overflow: auto; |
|
|
|
|
div, |
|
|
|
|
p, |
|
|
|
|
span { |
|
|
|
|
font-family: PingFangSC-Regular !important; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
.l-title { |
|
|
|
|
font-size: 17px; |
|
|
|
|
} |
|
|
|
|
.cover { |
|
|
|
|
background-color: #252528; |
|
|
|
|
img { |
|
|
|
|
border-radius: 8px; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
&.is-word { |
|
|
|
|
overflow: hidden; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.fileIframe { |
|
|
|
|
height: $height !important; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.video_wid, |
|
|
|
|
.inner { |
|
|
|
|
width: 100%; |
|
|
|
@ -316,49 +344,100 @@ $height: 700px; |
|
|
|
|
border: 0; |
|
|
|
|
overflow: auto; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.cover.is-word { |
|
|
|
|
.inner { |
|
|
|
|
height: calc(100% + 38px) !important; |
|
|
|
|
margin-top: -38px; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.video_wid:focus { |
|
|
|
|
outline: none; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.catalog { |
|
|
|
|
margin-left: 40px; |
|
|
|
|
width: 296px; |
|
|
|
|
padding: 16px; |
|
|
|
|
margin-left: 12px; |
|
|
|
|
background-color: #252528; |
|
|
|
|
.renew { |
|
|
|
|
width: 100%; |
|
|
|
|
margin-bottom: 16px; |
|
|
|
|
font-size: 17px; |
|
|
|
|
} |
|
|
|
|
.entry { |
|
|
|
|
display: block; |
|
|
|
|
width: 100%; |
|
|
|
|
height: 34px; |
|
|
|
|
margin-bottom: 16px; |
|
|
|
|
font-size: 17px; |
|
|
|
|
color: #fff; |
|
|
|
|
text-align: center; |
|
|
|
|
line-height: 34px; |
|
|
|
|
background: url(../../../assets/img/entry.png) 0 0/100% 100% no-repeat; |
|
|
|
|
cursor: pointer; |
|
|
|
|
&:hover { |
|
|
|
|
opacity: 0.9; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
.types { |
|
|
|
|
display: flex; |
|
|
|
|
margin: 15px 0; |
|
|
|
|
.item { |
|
|
|
|
display: inline-flex; |
|
|
|
|
justify-content: center; |
|
|
|
|
align-items: center; |
|
|
|
|
width: 120px; |
|
|
|
|
height: 40px; |
|
|
|
|
color: #fff; |
|
|
|
|
background-color: #4e4e4e; |
|
|
|
|
border-radius: 4px; |
|
|
|
|
cursor: pointer; |
|
|
|
|
&:first-child { |
|
|
|
|
margin-right: 10px; |
|
|
|
|
} |
|
|
|
|
&:hover { |
|
|
|
|
background-color: #377be3; |
|
|
|
|
} |
|
|
|
|
&.active { |
|
|
|
|
background-color: $main-color; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
.icon { |
|
|
|
|
margin-right: 5px; |
|
|
|
|
font-size: 18px; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.list { |
|
|
|
|
height: $height; |
|
|
|
|
height: calc(700px - 82px); |
|
|
|
|
overflow-y: auto; |
|
|
|
|
padding: 24px 16px; |
|
|
|
|
background: #fff; |
|
|
|
|
|
|
|
|
|
.title { |
|
|
|
|
margin-bottom: 8px; |
|
|
|
|
color: rgba(0, 0, 0, 0.85); |
|
|
|
|
font-size: 20px; |
|
|
|
|
margin-bottom: 11px; |
|
|
|
|
color: #fff; |
|
|
|
|
font-size: 16px; |
|
|
|
|
} |
|
|
|
|
.pro-title { |
|
|
|
|
margin-bottom: 5px; |
|
|
|
|
color: #fff; |
|
|
|
|
font-size: 12px; |
|
|
|
|
} |
|
|
|
|
/deep/.el-progress-bar { |
|
|
|
|
width: 92%; |
|
|
|
|
} |
|
|
|
|
/deep/.el-progress__text { |
|
|
|
|
color: #fff; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.desc-wrap { |
|
|
|
|
position: relative; |
|
|
|
|
|
|
|
|
|
.desc { |
|
|
|
|
font-size: 14px; |
|
|
|
|
color: rgba(0, 0, 0, 0.65); |
|
|
|
|
font-size: 12px; |
|
|
|
|
color: #fff; |
|
|
|
|
line-height: 22px; |
|
|
|
|
@include mul-ellipsis(2); |
|
|
|
|
|
|
|
|
|
&.active { |
|
|
|
|
display: block; |
|
|
|
|
overflow: visible; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.arrow { |
|
|
|
|
position: absolute; |
|
|
|
|
bottom: 2px; |
|
|
|
@ -367,62 +446,79 @@ $height: 700px; |
|
|
|
|
justify-content: space-between; |
|
|
|
|
width: 46px; |
|
|
|
|
background-color: #fff; |
|
|
|
|
|
|
|
|
|
span { |
|
|
|
|
font-size: 14px; |
|
|
|
|
color: rgba(0, 0, 0, 0.65); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
img { |
|
|
|
|
width: 16px; |
|
|
|
|
cursor: pointer; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
&.active { |
|
|
|
|
span { |
|
|
|
|
opacity: 0; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
img { |
|
|
|
|
transform: rotate(180deg); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.chapters { |
|
|
|
|
margin-top: 16px; |
|
|
|
|
max-height: calc(100% - 53px); |
|
|
|
|
overflow: auto; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.chapter { |
|
|
|
|
margin-bottom: 20px; |
|
|
|
|
|
|
|
|
|
.chapterName { |
|
|
|
|
color: rgba(0, 0, 0, 0.85); |
|
|
|
|
font-size: 16px; |
|
|
|
|
} |
|
|
|
|
.chapterName { |
|
|
|
|
color: #fff; |
|
|
|
|
font-size: 14px; |
|
|
|
|
} |
|
|
|
|
.section { |
|
|
|
|
padding: 5px 15px; |
|
|
|
|
margin-top: 12px; |
|
|
|
|
background-color: #121214; |
|
|
|
|
} |
|
|
|
|
.sectionName { |
|
|
|
|
position: relative; |
|
|
|
|
padding-right: 15px; |
|
|
|
|
margin: 12px 0; |
|
|
|
|
font-size: 12px; |
|
|
|
|
color: #999; |
|
|
|
|
cursor: pointer; |
|
|
|
|
@include ellipsis; |
|
|
|
|
img { |
|
|
|
|
margin-right: 8px; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.section { |
|
|
|
|
padding: 5px 15px; |
|
|
|
|
margin-top: 8px; |
|
|
|
|
background: rgba(0, 0, 0, 0.02); |
|
|
|
|
|
|
|
|
|
.sectionName { |
|
|
|
|
margin: 10px 0; |
|
|
|
|
font-size: 14px; |
|
|
|
|
color: rgba(0, 0, 0, 0.65); |
|
|
|
|
cursor: pointer; |
|
|
|
|
@include ellipsis; |
|
|
|
|
&.active { |
|
|
|
|
color: #9278ff; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
.icon { |
|
|
|
|
position: absolute; |
|
|
|
|
right: 0; |
|
|
|
|
font-size: 14px; |
|
|
|
|
color: #00c935; |
|
|
|
|
} |
|
|
|
|
.circle { |
|
|
|
|
width: 14px; |
|
|
|
|
height: 14px; |
|
|
|
|
border-radius: 50%; |
|
|
|
|
border: 1px solid #ccc; |
|
|
|
|
} |
|
|
|
|
&.active { |
|
|
|
|
color: #fff; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.buy { |
|
|
|
|
text-align: center; |
|
|
|
|
.tips { |
|
|
|
|
margin-bottom: 10px; |
|
|
|
|
font-size: 14px; |
|
|
|
|
} |
|
|
|
|
img { |
|
|
|
|
width: 85%; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
.el-image-viewer__wrapper { |
|
|
|
|
transform: translateY(-10px); |
|
|
|
|
transition: transform 0.5s; |
|
|
|
@ -431,23 +527,19 @@ $height: 700px; |
|
|
|
|
transform: translateY(0); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.el-image-viewer__close { |
|
|
|
|
z-index: 2000; |
|
|
|
|
top: 15px; |
|
|
|
|
right: 15px; |
|
|
|
|
|
|
|
|
|
&.doc-close { |
|
|
|
|
i { |
|
|
|
|
// color: #000 !important; |
|
|
|
|
color: #000 !important; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.list::-webkit-scrollbar { |
|
|
|
|
width: 4px; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.list::-webkit-scrollbar-thumb { |
|
|
|
|
border-radius: 10px; |
|
|
|
|
background: rgba(0, 0, 0, 0.06); |
|
|
|
@ -458,7 +550,6 @@ $height: 700px; |
|
|
|
|
position: absolute; |
|
|
|
|
background-color: rgb(57, 58, 61); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.word-mask { |
|
|
|
|
z-index: 9; |
|
|
|
|
position: absolute; |
|
|
|
@ -467,7 +558,6 @@ $height: 700px; |
|
|
|
|
width: 100%; |
|
|
|
|
background-color: rgb(243, 242, 241); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.word-mask1 { |
|
|
|
|
z-index: 9; |
|
|
|
|
position: absolute; |
|
|
|
@ -476,13 +566,11 @@ $height: 700px; |
|
|
|
|
width: 100%; |
|
|
|
|
background-color: #185abd; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.word-mask2 { |
|
|
|
|
z-index: 9; |
|
|
|
|
position: absolute; |
|
|
|
|
background-color: transparent; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.excel-mask1 { |
|
|
|
|
z-index: 9; |
|
|
|
|
position: absolute; |
|
|
|
@ -491,29 +579,30 @@ $height: 700px; |
|
|
|
|
width: 60%; |
|
|
|
|
background-color: #107c41; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/deep/ .pdf-dia { |
|
|
|
|
/deep/.pdf-dia { |
|
|
|
|
border-radius: 0 !important; |
|
|
|
|
|
|
|
|
|
.el-dialog__header { |
|
|
|
|
display: none; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.el-dialog__body { |
|
|
|
|
padding: 0; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.el-dialog__headerbtn { |
|
|
|
|
top: 10px; |
|
|
|
|
|
|
|
|
|
.el-dialog__close { |
|
|
|
|
color: #fff; |
|
|
|
|
font-size: 16px; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.pdf { |
|
|
|
|
position: relative; |
|
|
|
|
.full { |
|
|
|
|
position: absolute; |
|
|
|
|
top: 7px; |
|
|
|
|
right: 10px; |
|
|
|
|
cursor: pointer; |
|
|
|
|
} |
|
|
|
|
.arrow { |
|
|
|
|
padding: 10px 0; |
|
|
|
|
display: flex; |
|
|
|
@ -522,17 +611,78 @@ $height: 700px; |
|
|
|
|
font-size: 16px; |
|
|
|
|
color: #fff; |
|
|
|
|
background-color: #333; |
|
|
|
|
|
|
|
|
|
.turn { |
|
|
|
|
margin: 0 10px; |
|
|
|
|
font-size: 18px; |
|
|
|
|
cursor: pointer; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
.pdf-wrap { |
|
|
|
|
width: 80%; |
|
|
|
|
margin: 0 auto; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
/deep/.project-dia { |
|
|
|
|
.el-dialog__body { |
|
|
|
|
padding: 28px 32px; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
.projects { |
|
|
|
|
display: flex; |
|
|
|
|
flex-wrap: wrap; |
|
|
|
|
max-height: 400px; |
|
|
|
|
overflow: auto; |
|
|
|
|
li { |
|
|
|
|
display: inline-flex; |
|
|
|
|
align-items: center; |
|
|
|
|
width: 238px; |
|
|
|
|
padding: 16px; |
|
|
|
|
margin: 0 20px 20px 0; |
|
|
|
|
background-color: #f6f8fa; |
|
|
|
|
border-radius: 16px; |
|
|
|
|
cursor: pointer; |
|
|
|
|
&:hover { |
|
|
|
|
span { |
|
|
|
|
color: #007eff; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
&:nth-child(3n) { |
|
|
|
|
margin-right: 0; |
|
|
|
|
} |
|
|
|
|
&.active { |
|
|
|
|
background-color: #f2f7ff; |
|
|
|
|
span { |
|
|
|
|
color: #3988ff; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
span { |
|
|
|
|
max-width: 140px; |
|
|
|
|
margin-left: 14px; |
|
|
|
|
font-size: 14px; |
|
|
|
|
color: #333; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
.tabs { |
|
|
|
|
display: flex; |
|
|
|
|
align-items: center; |
|
|
|
|
margin: 10px 0; |
|
|
|
|
.item { |
|
|
|
|
padding: 0 10px; |
|
|
|
|
margin-right: 16px; |
|
|
|
|
font-size: 16px; |
|
|
|
|
text-align: center; |
|
|
|
|
color: #333; |
|
|
|
|
line-height: 50px; |
|
|
|
|
border-bottom: 3px solid transparent; |
|
|
|
|
cursor: pointer; |
|
|
|
|
&.active { |
|
|
|
|
color: #007eff; |
|
|
|
|
border-color: #007eff; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
.tab-content { |
|
|
|
|
width: calc(100% - 308px); |
|
|
|
|
} |
|
|
|
|
</style> |