@ -1,343 +1,215 @@
< template >
< div >
< el -card shadow = "hover"
class = "mgb20" >
< el -card shadow = "hover" class = "mgb20" >
< div class = "flex-between" >
< el -page -header @back ="back"
: content = "name + '/' + (sorting? '编辑排序' : '内容设置')" > < / e l - p a g e - h e a d e r >
< el -page -header @back ="back" : content = "name + '/' + (sorting ? '编辑排序' : '内容设置')" > < / e l - p a g e - h e a d e r >
< / div >
< / e l - c a r d >
<!-- 内容设置 -- >
< el -card shadow = "hover"
class = "mgb20" >
< el -card shadow = "hover" class = "mgb20" >
< div class = "page" >
< div class = "relative" >
< div class = "p-title" > 内容设置 < / div >
< div class = "btns" >
< template v-if ="!sorting" >
< el -button type = "primary"
round
@ click = "addChapter"
v - auth = "'/curriculum:内容设置:添加章节'" > 添加章节 < / e l - b u t t o n >
< el -button type = "primary"
round
@ click = "sort"
v - auth = "'/curriculum:内容设置:编辑排序'" > 编辑顺序 < / e l - b u t t o n >
< el -button type = "primary" round @click ="addChapter" v-auth ="'/curriculum:内容设置:添加章节'" > 添加章节 < / el -button >
< el -button type = "primary" round @click ="sort" v-auth ="'/curriculum:内容设置:编辑排序'" > 编辑顺序 < / el -button >
< / template >
< template v-else >
< el -button type = "primary"
round
@ click = "move" > 批量移动 < / e l - b u t t o n >
< el -button type = "primary"
round
@ click = "cancelSort" > 取消 < / e l - b u t t o n >
< el -button type = "primary"
round
@ click = "saveSort" > 保存 < / e l - b u t t o n >
< el -button type = "primary" round @click ="move" > 批量移动 < / el -button >
< el -button type = "primary" round @click ="cancelSort" > 取消 < / el -button >
< el -button type = "primary" round @click ="saveSort" > 保存 < / el -button >
< / template >
< / div >
< / div >
< el -divider > < / e l - d i v i d e r >
< div class = "page-content" >
< div class = "mgb20"
v - for = "(chapter,index) in chapters"
: key = "chapter.id" >
< div class = "mgb20" v-for ="(chapter, index) in chapters" :key="chapter.id" >
< div class = "flex-between mgb10" >
< div > { { chapter . name } } < / div >
< div >
< template v-if ="!sorting" >
< el -button class = "action-btn"
plain
@ click = "editChapter(chapter)"
v - auth = "'/curriculum:内容设置:修改章节名称'" > 修改章节名称 < / e l - b u t t o n >
< el -button class = "action-btn"
plain
@ click = "addSection(chapter.id)"
v - auth = "'/curriculum:内容设置:添加小节'" > 添加小节 < / e l - b u t t o n >
< el -button class = "action-btn"
plain
@ click = "delChapter(chapter.id)"
v - auth = "'/curriculum:内容设置:删除章节'" > 删除 < / e l - b u t t o n >
< el -button class = "action-btn" plain @click ="editChapter(chapter)"
v - auth = "'/curriculum:内容设置:修改章节名称'" > 修改章节名称 < / e l - b u t t o n >
< el -button class = "action-btn" plain @click ="addSection(chapter.id)"
v - auth = "'/curriculum:内容设置:添加小节'" > 添加小节 < / e l - b u t t o n >
< el -button class = "action-btn" plain @click ="delChapter(chapter.id)"
v - auth = "'/curriculum:内容设置:删除章节'" > 删除 < / e l - b u t t o n >
< / template >
< template v-else >
< i class = "el-icon-top sort-icon"
: class = "{disabled: index == 0}"
style = "margin-right: 5px"
@ click = "sortChapter(chapter,'up',index == 0,index)" > < / i >
< i class = "el-icon-bottom sort-icon"
: class = "{disabled: index == chapters.length-1}"
@ click = "sortChapter(chapter,'down',index == chapter.length-1,index)" > < / i >
< i class = "el-icon-top sort-icon" : class = "{ disabled: index == 0 }" style = "margin-right: 5px"
@ click = "sortChapter(chapter, 'up', index == 0, index)" > < / i >
< i class = "el-icon-bottom sort-icon" : class = "{ disabled: index == chapters.length - 1 }"
@ click = "sortChapter(chapter, 'down', index == chapter.length - 1, index)" > < / i >
< / template >
< / div >
< / div >
< el -table :data ="chapter.subsectionList"
class = "table"
stripe
header - align = "center"
row - key = "id" >
< el -table -column v -if = " sorting "
width = "55"
align = "center" >
< el -table :data ="chapter.subsectionList" class = "table" stripe header -align = " center " row -key = " id " >
< el -table -column v-if ="sorting" width="55" align="center" >
< template slot -scope = " scope " >
< el -checkbox v-model ="scope.row.check" > < / el -checkbox >
< / template >
< / e l - t a b l e - c o l u m n >
< el -table -column type = "index"
width = "100"
label = "序号"
align = "center" > < / e l - t a b l e - c o l u m n >
< el -table -column prop = "name"
label = "资源名称" >
< el -table -column type = "index" width = "100" label = "序号" align = "center" > < / e l - t a b l e - c o l u m n >
< el -table -column prop = "name" label = "资源名称" >
< / e l - t a b l e - c o l u m n >
< el -table -column prop = "fileType"
label = "资源类型"
align = "center" >
< el -table -column prop = "fileType" label = "资源类型" align = "center" >
< template slot -scope = " scope " >
{ { transferType ( scope . row . fileType ) } }
< / template >
< / e l - t a b l e - c o l u m n >
< el -table -column label = "操作"
align = "center"
width = "300" >
< el -table -column label = "操作" align = "center" width = "300" >
< template slot -scope = " scope " >
< template v-if ="!sorting" >
< el -button type = "text"
@ click = "download(scope.row)"
v - auth = "'/curriculum:内容设置:下载'" > 下载 < / e l - b u t t o n >
< el -button type = "text"
@ click = "preview(scope.row)"
v - auth = "'/curriculum:内容设置:查看'" > 查看 < / e l - b u t t o n >
< el -button type = "text"
@ click = "delSection(scope.row)"
v - auth = "'/curriculum:内容设置:删除小节'" > 删除 < / e l - b u t t o n >
< el -button type = "text"
@ click = "editSectionName(scope.row,chapter.id)"
v - auth = "'/curriculum:内容设置:修改小节名称'" > 修改小节名称 < / e l - b u t t o n >
< el -button type = "text"
@ click = "switchFile(scope.row,chapter.id)"
v - auth = "'/curriculum:内容设置:更换文件'" > 更换文件 < / e l - b u t t o n >
< el -button type = "text" @click ="download(scope.row)" v-auth ="'/curriculum:内容设置:下载'" > 下载 < / el -button >
< el -button type = "text" @click ="preview(scope.row)" v-auth ="'/curriculum:内容设置:查看'" > 查看 < / el -button >
< el -button type = "text" @click ="delSection(scope.row)"
v - auth = "'/curriculum:内容设置:删除小节'" > 删除 < / e l - b u t t o n >
< el -button type = "text" @ click = "editSectionName(scope.row, chapter.id)"
v - auth = "'/curriculum:内容设置:修改小节名称'" > 修改小节名称 < / e l - b u t t o n >
< el -button type = "text" @ click = "switchFile(scope.row, chapter.id)"
v - auth = "'/curriculum:内容设置:更换文件'" > 更换文件 < / e l - b u t t o n >
< / template >
< template v-else >
< i class = "el-icon-top sort-icon"
: class = "{disabled: scope.$index == 0}"
style = "margin-right: 5px"
@ click = "sortSection(index,'up',scope.$index == 0,scope.$index)" > < / i >
< i class = "el-icon-top sort-icon" : class = "{ disabled: scope.$index == 0 }" style = "margin-right: 5px"
@ click = "sortSection(index, 'up', scope.$index == 0, scope.$index)" > < / i >
< i class = "el-icon-bottom sort-icon"
: class = "{disabled: scope.$index == chapter.subsectionList.length-1}"
@ click = "sortSection(index,'down',scope.$index == chapter.subsectionList.length-1,scope.$index)" > < / i >
: class = "{ disabled: scope.$index == chapter.subsectionList.length - 1 }"
@ click = "sortSection(index, 'down', scope.$index == chapter.subsectionList.length - 1, scope.$index)" > < / i >
< / template >
< / template >
< / e l - t a b l e - c o l u m n >
< / e l - t a b l e >
< / div >
< el -dialog : title = "chapterId ? '编辑章节' : '新增章节'"
: visible . sync = "chapterVisible"
width = "540px"
: close - on - click - modal = "false" >
< el -dialog : title = "chapterId ? '编辑章节' : '新增章节'" :visible.sync ="chapterVisible" width = "540px"
: close - on - click - modal = "false" >
< el -form >
< el -form -item >
< el -input placeholder = "请输入章节名称,便于对小节归类"
v - model = "chapterName"
maxlength = "50" > < / e l - i n p u t >
< el -input placeholder = "请输入章节名称,便于对小节归类" v-model ="chapterName" maxlength="50" > < / el -input >
< / e l - f o r m - i t e m >
< / e l - f o r m >
< span slot = "footer"
class = "dialog-footer" >
< span slot = "footer" class = "dialog-footer" >
< el -button @ click = "chapterVisible = false" > 取消 < / e l - b u t t o n >
< el -button type = "primary"
@ click = "chapterSubmit" > 确定 < / e l - b u t t o n >
< el -button type = "primary" @click ="chapterSubmit" > 确定 < / el -button >
< / span >
< / e l - d i a l o g >
< el -dialog title = "添加小节"
: visible . sync = "sectionVisible"
width = "540px"
@ close = "closeSection"
: close - on - click - modal = "false" >
< el -form ref = "form"
: model = "sectionForm"
label - width = "80px"
@ submit . native . prevent >
< el -dialog title = "添加小节" :visible.sync ="sectionVisible" width = "540px" @close ="closeSection"
: close - on - click - modal = "false" >
< el -form ref = "form" :model ="sectionForm" label -width = " 80px " @ submit.native.prevent >
< el -form -item label = "资源添加" >
< Upload :max-size ="100000"
: file - list = "uploadList"
: on - remove = "handleRemove"
@ beforeUpload = "beforeUpload"
@ onSuccess = "uploadSuccess" >
< Upload :max-size ="100000" :file-list ="uploadList" :on-remove ="handleRemove"
@ beforeUpload = "beforeUpload" @ onSuccess = "uploadSuccess" >
< template slot = "tip" >
< p > 视频请上传MP4格式 , 大小不超过150M ; office文件大小不要超过10M < / p >
< / template >
< / Upload >
< / e l - f o r m - i t e m >
< el -form -item label = "小节名称" >
< el -input placeholder = "请输入小节名称"
v - model . trim = "sectionForm.sectionName"
maxlength = "50"
@ keyup . enter . native = "sectionSubmit()" > < / e l - i n p u t >
< el -input placeholder = "请输入小节名称" v -model .trim = " sectionForm.sectionName " maxlength = "50"
@ keyup . enter . native = "sectionSubmit()" > < / e l - i n p u t >
< / e l - f o r m - i t e m >
< / e l - f o r m >
< span slot = "footer"
class = "dialog-footer" >
< span slot = "footer" class = "dialog-footer" >
< el -button @ click = "sectionVisible = false" > 取消 < / e l - b u t t o n >
< el -button type = "primary"
@ click = "sectionSubmit" > 确定 < / e l - b u t t o n >
< el -button type = "primary" @click ="sectionSubmit" > 确定 < / el -button >
< / span >
< / e l - d i a l o g >
< el -dialog title = "更换文件"
: visible . sync = "switchVisible"
width = "540px"
: close - on - click - modal = "false"
@ close = "closeSwitch" >
< el -dialog title = "更换文件" :visible.sync ="switchVisible" width = "540px" :close-on-click-modal ="false"
@ close = "closeSwitch" >
< div style = "text-align: center" >
< Upload :max-size ="100000"
: file - list = "uploadList"
: on - remove = "handleRemove"
@ beforeUpload = "beforeUpload"
@ onSuccess = "uploadSuccess" >
< Upload :max-size ="100000" :file-list ="uploadList" :on-remove ="handleRemove" @beforeUpload ="beforeUpload"
@ onSuccess = "uploadSuccess" >
< div slot = "tip" > < / div >
< / Upload >
< / div >
< span slot = "footer"
class = "dialog-footer" >
< span slot = "footer" class = "dialog-footer" >
< el -button @ click = "switchVisible = false" > 取消 < / e l - b u t t o n >
< el -button type = "primary"
@ click = "switchSubmit" > 确定 < / e l - b u t t o n >
< el -button type = "primary" @click ="switchSubmit" > 确定 < / el -button >
< / span >
< / e l - d i a l o g >
< el -dialog title = "修改小节名称"
: visible . sync = "sectionNameVisible"
width = "540px"
: close - on - click - modal = "false" >
< el -dialog title = "修改小节名称" :visible.sync ="sectionNameVisible" width = "540px" :close-on-click-modal ="false" >
< el -form @ submit.native.prevent >
< el -form -item >
< el -input placeholder = "请输入小节名称"
v - model = "sectionForm.sectionName"
maxlength = "50"
@ keyup . enter . native = "sectionNameSubmit()" > < / e l - i n p u t >
< el -input placeholder = "请输入小节名称" v -model = " sectionForm.sectionName " maxlength = "50"
@ keyup . enter . native = "sectionNameSubmit()" > < / e l - i n p u t >
< / e l - f o r m - i t e m >
< / e l - f o r m >
< span slot = "footer"
class = "dialog-footer" >
< span slot = "footer" class = "dialog-footer" >
< el -button @ click = "sectionNameVisible = false" > 取消 < / e l - b u t t o n >
< el -button type = "primary"
@ click = "sectionNameSubmit" > 确定 < / e l - b u t t o n >
< el -button type = "primary" @click ="sectionNameSubmit" > 确定 < / el -button >
< / span >
< / e l - d i a l o g >
< div v -show = " previewImg "
class = "el-image-viewer__wrapper"
: class = "{active: previewImg}"
style = "z-index: 2000" >
< div v -show = " previewImg " class = "el-image-viewer__wrapper" : class = "{ active: previewImg }"
style = "z-index: 2000" >
< div class = "el-image-viewer__mask" > < / div >
< span class = "el-image-viewer__btn el-image-viewer__close"
@ click = "previewImg = ''" > < i class = "el-icon-circle-close"
style = "color: #fff" > < / i > < / span >
< span class = "el-image-viewer__btn el-image-viewer__close" @ click = "previewImg = ''" > < i
class = "el-icon-circle-close" style = "color: #fff" > < / i > < / span >
< div class = "el-image-viewer__canvas" >
< img :src ="previewImg"
class = "el-image-viewer__img"
style = "transform: scale(1) rotate(0deg);margin-top: -1px; max-height: 100%; max-width: 100%;" >
< img :src ="previewImg" class = "el-image-viewer__img"
style = "transform: scale(1) rotate(0deg);margin-top: -1px; max-height: 100%; max-width: 100%;" >
< / div >
< / div >
< div v -show = " iframeSrc | | videoSrc "
class = "el-image-viewer__wrapper"
: class = "{active: iframeSrc}"
style = "z-index: 2000" >
< div v -show = " iframeSrc | | videoSrc " class = "el-image-viewer__wrapper" : class = "{ active: iframeSrc }"
style = "z-index: 2000" >
< div class = "el-image-viewer__mask" > < / div >
< span class = "el-image-viewer__btn el-image-viewer__close"
: class = "{'doc-close': isWord}"
: style = "{top: isWord ? '50px' : '5px'}"
@ click = "closeIframe" > < i class = "el-icon-circle-close"
style = "color: #fff" > < / i > < / span >
< span class = "el-image-viewer__btn el-image-viewer__close" : class = "{ 'doc-close': isWord }"
: style = "{ top: isWord ? '50px' : '5px' }" @ click = "closeIframe" > < i class = "el-icon-circle-close"
style = "color: #fff" > < / i > < / span >
< div class = "el-image-viewer__canvas" >
< iframe v -if = " iframeSrc "
class = "fileIframe"
id = "fileIframe"
: src = "iframeSrc"
frameborder = "0" > < / iframe >
< video v -if = " videoSrc "
class = "video"
width = "1200"
height = "600"
autoplay
controls >
< source :src ="videoSrc"
type = "video/mp4" >
< iframe v-if ="iframeSrc" class="fileIframe" id="fileIframe" :src="iframeSrc" frameborder="0" > < / iframe >
< video v -if = " videoSrc " class = "video" width = "1200" height = "600" autoplay controls >
< source :src ="videoSrc" type = "video/mp4" >
您的浏览器不支持 video 标签 。
< / video >
< template v-if ="showMask" >
< div class = "mask"
style = "width: 200px;height: 30px;top: 53px;right: 320px" > < / div >
< div class = "mask"
style = "width: 175px;height: 30px;top: 53px;right: 5px" > < / div >
< div class = "mask" style = "width: 200px;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-mask1"
style = "width: 200px;height: 50px;" > < / div >
< div class = "word-mask"
style = "height: 40px;top: 48px;" > < / div >
< div class = "word-mask2"
style = "top: 55px;left: 28%;width: 44%;height: calc(100% - 80px);" > < / div >
< div class = "word-mask1" style = "width: 200px;height: 50px;" > < / div >
< div class = "word-mask" style = "height: 40px;top: 48px;" > < / div >
< div class = "word-mask2" style = "top: 55px;left: 28%;width: 44%;height: calc(100% - 80px);" > < / div >
< / template >
< template v-if ="showMask2 && iframeSrc" >
< div class = "excel-mask1"
style = "height: 48px;" > < / div >
< div class = "excel-mask1" style = "height: 48px;" > < / div >
< / template >
< / div >
< / div >
< div v -show = " playAuth "
class = "el-image-viewer__wrapper"
: class = "{active: playAuth}"
style = "z-index: 2000" >
< div v-show ="playAuth" class="el-image-viewer__wrapper" :class="{ active: playAuth }" style="z-index: 2000" >
< div class = "el-image-viewer__mask" > < / div >
< span class = "el-image-viewer__btn el-image-viewer__close"
@ click = "closePlayer" > < i class = "el-icon-circle-close"
style = "color: #fff" > < / i > < / span >
< div class = "player"
id = "player" > < / div >
< span class = "el-image-viewer__btn el-image-viewer__close" @click ="closePlayer" > < i
class = "el-icon-circle-close" style = "color: #fff" > < / i > < / span >
< div class = "player" id = "player" > < / div >
< / div >
< Pdf :visible.sync ="pdfVisible"
: src . sync = "pdfSrc" / >
< Pdf :visible.sync ="pdfVisible" :src.sync ="pdfSrc" / >
< / div >
< / div >
< / e l - c a r d >
< div class = "player-download"
id = "playerDownload" > < / div >
< div class = "player-download" id = "playerDownload" > < / div >
< el -dialog title = "资源移动"
: visible . sync = "moveVisible"
: close - on - click - modal = "false"
width = "330px" >
< el -dialog title = "资源移动" :visible.sync ="moveVisible" :close-on-click-modal ="false" width = "330px" >
< el -form >
< el -form -item label = "目标章节" >
< el -select v -model = " moveForm.id "
placeholder = "请选择目标章节"
@ change = "chapterChange" >
< el -option v -for = " ( item , i ) in chapters "
: key = "i"
: label = "item.name"
: value = "item.id" > < / e l - o p t i o n >
< el -select v-model ="moveForm.id" placeholder="请选择目标章节" @change="chapterChange" >
< el -option v-for ="(item, i) in chapters" :key="i" :label="item.name" :value="item.id" > < / el -option >
< / e l - s e l e c t >
< / e l - f o r m - i t e m >
< el -form -item label = "目标排序" >
< el -select v -model = " moveForm.sort "
placeholder = "请选择目标排序" >
< el -option v -for = " ( item , i ) in sortList "
: key = "i"
: label = "item.name"
: value = "item.id" > < / e l - o p t i o n >
< el -select v-model ="moveForm.sort" placeholder="请选择目标排序" >
< el -option v-for ="(item, i) in sortList" :key="i" :label="item.name" :value="item.id" > < / el -option >
< / e l - s e l e c t >
< / e l - f o r m - i t e m >
< / e l - f o r m >
< span slot = "footer"
class = "dialog-footer" >
< span slot = "footer" class = "dialog-footer" >
< el -button @ click = "moveVisible = false" > 取消 < / e l - b u t t o n >
< el -button type = "primary"
@ click = "moveConfirm" > 确定 < / e l - b u t t o n >
< el -button type = "primary" @click ="moveConfirm" > 确定 < / el -button >
< / span >
< / e l - d i a l o g >
< / div >
@ -753,7 +625,7 @@ export default {
const { fileType , fileId } = row
/ / 下 载 p p t
if ( fileType === 'pptx' ) {
this . downloadFile ( row . name , row . fileUrl )
this . downloadFile ( row . originalFileName || row . name , row . fileUrl )
} else if ( fileId ) {
/ / 阿 里 云 点 播 视 频 , 先 生 成 视 频 , 再 拿 到 视 频 地 址 去 下 载 ( 现 在 已 经 去 掉 视 频 点 播 的 方 法 , 但 是 还 需 要 兼 容 历 史 数 据 )
this . $get ( ` ${ this . api . getPlayAuth } / ${ fileId } ` ) . then ( res => {
@ -949,172 +821,177 @@ export default {
< style scoped lang = "scss" >
. page - content {
max - height : calc ( 100 vh - 420 px ) ;
overflow : auto ;
max - height : calc ( 100 vh - 420 px ) ;
overflow : auto ;
}
. action - btn {
color : # 9076 ff ;
font - size : 14 px ;
border : # 9076 ff 1 px solid ;
background - color : # fff ;
border - radius : 4 px ;
color : # 9076 ff ;
font - size : 14 px ;
border : # 9076 ff 1 px solid ;
background - color : # fff ;
border - radius : 4 px ;
}
. btns {
position : absolute ;
top : 12 px ;
right : 24 px ;
position : absolute ;
top : 12 px ;
right : 24 px ;
. el - button {
font - size : 14 px ;
}
. el - button {
font - size : 14 px ;
}
}
. sort - icon {
font - size : 24 px ;
cursor : pointer ;
font - size : 24 px ;
cursor : pointer ;
& . disabled {
color : # ccc ;
cursor : not - allowed ;
}
& . disabled {
color : # ccc ;
cursor : not - allowed ;
}
}
/deep/ . el - progress - bar {
padding - right : 70 px ;
margin - right : - 70 px ;
padding - right : 70 px ;
margin - right : - 70 px ;
}
. el - upload _ _tip {
position : absolute ;
top : - 4 px ;
right : 0 ;
width : 300 px ;
line - height : 1.4 ;
position : absolute ;
top : - 4 px ;
right : 0 ;
width : 300 px ;
line - height : 1.4 ;
}
. el - image - viewer _ _wrapper {
transform : translateY ( - 10 px ) ;
transition : transform 0.5 s ;
transform : translateY ( - 10 px ) ;
transition : transform 0.5 s ;
& . active {
transform : translateY ( 0 ) ;
}
& . active {
transform : translateY ( 0 ) ;
}
}
. el - image - viewer _ _close {
z - index : 10000 ;
top : 15 px ;
right : 15 px ;
z - index : 10000 ;
top : 15 px ;
right : 15 px ;
& . doc - close {
i {
color : # 000 ! important ;
}
& . doc - close {
i {
color : # 000 ! important ;
}
}
}
. player {
position : absolute ;
top : 50 % ;
left : 50 % ;
transform : translate ( - 50 % , - 50 % ) ;
width : 1200 px ! important ;
height : 600 px ! important ;
position : absolute ;
top : 50 % ;
left : 50 % ;
transform : translate ( - 50 % , - 50 % ) ;
width : 1200 px ! important ;
height : 600 px ! important ;
}
. player - download {
position : absolute ;
top : - 9999 px ;
position : absolute ;
top : - 9999 px ;
}
. fileIframe {
z - index : 1 ;
position : absolute ;
top : 0 ;
left : 0 ;
bottom : 0 ;
right : 0 ;
width : 100 % ;
height : 100 % ;
z - index : 1 ;
position : absolute ;
top : 0 ;
left : 0 ;
bottom : 0 ;
right : 0 ;
width : 100 % ;
height : 100 % ;
}
. mask {
z - index : 1000 ;
position : fixed ;
background - color : rgb ( 57 , 58 , 61 ) ;
z - index : 1000 ;
position : fixed ;
background - color : rgb ( 57 , 58 , 61 ) ;
}
. word - mask {
z - index : 1000 ;
position : fixed ;
right : 0 ;
width : 100 % ;
background - color : rgb ( 243 , 242 , 241 ) ;
z - index : 1000 ;
position : fixed ;
right : 0 ;
width : 100 % ;
background - color : rgb ( 243 , 242 , 241 ) ;
}
. word - mask1 {
z - index : 1000 ;
position : fixed ;
top : 0 ;
right : 0 ;
background - color : # 2 b579a ;
z - index : 1000 ;
position : fixed ;
top : 0 ;
right : 0 ;
background - color : # 2 b579a ;
}
. word - mask2 {
z - index : 1000 ;
position : fixed ;
background - color : transparent ;
z - index : 1000 ;
position : fixed ;
background - color : transparent ;
}
. excel - mask1 {
z - index : 9 ;
position : absolute ;
top : 0 ;
left : 20 % ;
width : 80 % ;
background - color : # 107 c41 ;
z - index : 9 ;
position : absolute ;
top : 0 ;
left : 20 % ;
width : 80 % ;
background - color : # 107 c41 ;
}
. page {
position : relative ;
padding : 24 px ;
background - color : # fff ;
border - radius : 8 px ;
. tool {
display : flex ;
justify - content : space - between ;
margin - bottom : 24 px ;
. filter {
display : inline - flex ;
flex - wrap : wrap ;
align - items : center ;
flex : 1 ;
li {
display : inline - flex ;
align - items : center ;
margin - right : 30 px ;
label {
margin - right : 6 px ;
font - size : 14 px ;
line - height : 14 px ;
color : rgba ( 0 , 0 , 0 , 0.65 ) ;
white - space : nowrap ;
}
}
position : relative ;
padding : 24 px ;
background - color : # fff ;
border - radius : 8 px ;
. tool {
display : flex ;
justify - content : space - between ;
margin - bottom : 24 px ;
. filter {
display : inline - flex ;
flex - wrap : wrap ;
align - items : center ;
flex : 1 ;
li {
display : inline - flex ;
align - items : center ;
margin - right : 30 px ;
label {
margin - right : 6 px ;
font - size : 14 px ;
line - height : 14 px ;
color : rgba ( 0 , 0 , 0 , 0.65 ) ;
white - space : nowrap ;
}
}
}
& . mul {
margin - bottom : 0 ;
& . mul {
margin - bottom : 0 ;
. filter {
width : 1200 px ;
. filter {
width : 1200 px ;
li {
margin - bottom : 24 px ;
}
}
li {
margin - bottom : 24 px ;
}
}
}
}
}
< / style >