教师节样式问题

This commit is contained in:
nisen
2023-08-29 14:16:36 +08:00
parent 0d16d45685
commit 90a4b4d553
4 changed files with 18 additions and 1087 deletions

View File

@@ -149,7 +149,6 @@
<script>
import { mapGetters } from "vuex";
import apiCourseStudy from "@/api/modules/courseStudy.js";
import portalFloatTools from "@/components/PortalFloatTools.vue";
import apiCourse from "@/api/modules/coursePortal.js";
import interactBar from "@/components/Portal/interactBar.vue";
import courseImage from "@/components/Course/courseImage.vue";
@@ -158,7 +157,6 @@ import apiIndex from "@/api/phase2/index.js";
export default {
name: "Grateful",
components: {
portalFloatTools,
interactBar,
courseImage,
},
@@ -220,7 +218,7 @@ export default {
this.isNext = false;
let { orderType, num } = this.courseList;
let course = {
pageSize: 6,
pageSize: 8,
device: 1,
orderField: orderType == 1 ? "" : "studys",
orderAsc: false,
@@ -311,15 +309,6 @@ export default {
}
}
.team {
display: grid;
.teamImg {
width: 749px;
height: 478px;
}
}
.float-tools {
position: fixed;
right: 0;
@@ -353,121 +342,6 @@ export default {
transition: all 0.6s;
}
.bannbox {
width: 100%;
height: 520px;
text-align: center;
filter: blur(5px);
z-index: -1;
background-size: 100% 100%;
}
::v-deep.swiper-slide .games .swiper-slide-active {
text-align: center !important;
}
#container {
position: absolute;
height: 520px;
top: 0;
width: 100%;
}
.banner-img {
height: 520px;
position: absolute;
top: 0;
left: 0;
right: 0;
transform: (-50%, -50%);
}
.course-banner {
height: 520px;
.swiper-button-prev {
height: 38px;
padding: 0 16px;
background: rgba($color: #000000, $alpha: 0.8) url("../../assets/images/icon/ban-left.png") no-repeat;
background-size: 12px 18px;
background-position: 16px 10px;
bottom: 66px;
border-radius: 19px 0 0 19px;
}
.swiper-button-next {
height: 38px;
// right: 52.65%;
bottom: 66px;
top: auto;
padding: 0 16px;
background: rgba($color: #000000, $alpha: 0.1) url("../../assets/images/icon/ban-right.png") no-repeat;
background-size: 12px 18px;
background-position: 6px 10px;
border-radius: 0 19px 19px 0;
}
.swiper-pagination-bullets {
// background: #000;
left: 60px;
bottom: 66px;
}
::v-deep .swiper-pagination {
line-height: 25px;
height: 32px;
border-radius: 19px;
// background: rgba($color: #000000, $alpha: 0.1);
width: auto;
left: 45%;
padding: 0 20px;
border-radius: 19px;
.swiper-pagination-bullet {
position: relative;
width: 25px;
height: 5px;
margin-top: 10px;
background: #fff;
opacity: 1 !important;
// background: rgba($color: #fff, $alpha: 0.5);
border-radius: 2px;
}
.swiper-pagination-bullet::before {
content: "";
position: absolute;
top: -20px;
bottom: -20px;
left: -2px;
right: -2px;
}
.swiper-pagination-bullet-active {
height: 5px;
opacity: 1 !important;
margin-top: 10px;
width: 25px;
background: #387df7;
// background: rgba($color: #fff, $alpha: 0.8);
border-radius: 2px;
}
.swiper-container {
// background-color: rgba($color: #000000, $alpha: 0.2);
}
}
}
.three-line-ellipsis {
overflow: hidden;
text-overflow: ellipsis;
box-sizing: border-box;
-webkit-line-clamp: 3;
word-break: break-all;
display: -webkit-box;
-webkit-box-orient: vertical;
}
.two-line-ellipsis {
display: -webkit-box;
@@ -477,156 +351,6 @@ export default {
box-sizing: border-box;
}
.one-line-ellipsis {
display: -webkit-box;
overflow: hidden;
-webkit-box-orient: vertical;
-webkit-line-clamp: 1;
box-sizing: border-box;
}
.course-card {
padding-bottom: 22px;
box-sizing: border-box;
position: relative;
background-color: #ffffff;
.course-image-box {
position: relative;
.course-type {
position: absolute;
top: 0px;
right: 0px;
width: 60px;
height: 24px;
line-height: 24px;
text-align: center;
background-color: #f99000;
border-radius: 2px 4px 2px 14px;
font-size: 12px;
color: #ffffff;
-moz-user-select: none;
/*火狐*/
-webkit-user-select: none;
/*webkit浏览器*/
-ms-user-select: none;
/*IE10*/
-khtml-user-select: none;
/*早期浏览器*/
user-select: none;
}
.course-type-title {
position: absolute;
top: 5px;
right: 0px;
width: 90px;
height: 30px;
line-height: 30px;
text-align: center;
color: #ffffff;
-moz-user-select: none;
/*火狐*/
-webkit-user-select: none;
/*webkit浏览器*/
-ms-user-select: none;
/*IE10*/
-khtml-user-select: none;
/*早期浏览器*/
user-select: none;
}
.course-flag {
height: 26px;
position: absolute;
top: 15px;
right: 0;
}
.course-tip {
width: 100%;
height: 26px;
position: absolute;
bottom: 0;
padding: 0 10px;
color: #fff;
font-size: 14px;
.course-study-count {
float: left;
}
.course-time {
float: right;
}
}
}
.course-title {
margin: 16px 0 16px 0;
height: 44px;
-moz-user-select: none;
/*火狐*/
-webkit-user-select: none;
/*webkit浏览器*/
-ms-user-select: none;
/*IE10*/
-khtml-user-select: none;
/*早期浏览器*/
user-select: none;
}
.course-title-box {
display: flex;
}
.course-author {
display: flex;
justify-content: space-between;
.course-author-left {
font-size: 14px;
color: #6e7b84;
-moz-user-select: none;
/*火狐*/
-webkit-user-select: none;
/*webkit浏览器*/
-ms-user-select: none;
/*IE10*/
-khtml-user-select: none;
/*早期浏览器*/
user-select: none;
}
}
.study-num {
font-size: 14px;
color: #6e7b84;
// margin-left: 12px;
-moz-user-select: none;
/*火狐*/
-webkit-user-select: none;
/*webkit浏览器*/
-ms-user-select: none;
/*IE10*/
-khtml-user-select: none;
/*早期浏览器*/
user-select: none;
}
.course-score {
padding: 10px 15px;
height: 40px;
display: flex;
justify-content: space-between;
align-items: center;
.course-score-star {
flex: 1;
}
}
}
// 内容部分
.modules {

View File

@@ -93,6 +93,7 @@ export default {
.timeAndAuthor {
padding: 0 20px;
.author {
font-size: 14px;
font-weight: 400;

View File

@@ -51,183 +51,37 @@
<script>
import { mapGetters } from "vuex";
import apiCourseStudy from "@/api/modules/courseStudy.js";
import portalFloatTools from "@/components/PortalFloatTools.vue";
import apiCourse from "@/api/modules/coursePortal.js";
import apiCase from "@/api/modules/cases.js";
import apiQa from "@/api/modules/qa.js";
import apiGuide from "@/api/phase2/guide.js";
import apiUser from "@/api/system/user.js";
import interactBar from "@/components/Portal/interactBar.vue";
import courseImage from "@/components/Course/courseImage.vue";
import { toScore, formatUserNumber, cutOrgNamePath } from "@/utils/tools.js";
import apiPlace from "@/api/phase2/place.js";
import apiStat from "@/api/phase2/stat.js";
import { toScore, formatUserNumber } from "@/utils/tools.js";
import apiIndex from "@/api/phase2/index.js";
import apiUserhobby from "@/api/phase2/userhobby.js";
export default {
name: "Grateful",
name: "TeacherEmpowerment",
components: {
portalFloatTools,
interactBar,
courseImage,
},
created() {
this.$store.dispatch("refrashStudyTaskCount");
let $this = this;
//判断是否弹出登录勋章,设置截止日期
var nowDate = new Date();
var endDate = new Date("2022-11-18"); //先设置时间是11月18日
if (nowDate < endDate) {
apiStat.getUserLoginMedal().then((rs) => {
if (rs.status == 200) {
if (rs.result.show) {
//设置是否需要显示纪念勋章
$this.needLoginMedal = true;
}
}
});
}
//提取需要提示勋章
// apiStat.getUserMedalTips().then(res=>{
// if(res.status==200){
// $this.medalTips=res.result;
// }
// })
},
data() {
return {
showUClass: false,
showLoginMedal: false, //是否显示登录勋章
needLoginMedal: false, //是否需要显示纪念勋章
medalTips: [
{ medalId: 1, medalLevel: 5, isShow: false },
{ medalId: 3, medalLevel: 4, isShow: false },
],
lastStudy: {},
overlayShow: false,
userData: { level: 1, uvalue: 0, totalStudyHour: 0 },
userHobby: {
needShow: false,
localKeyPre: "user-hobby-", //本地存储的key
form: {
textarea: "",
},
needHobbyShow: false, //是否显示兴趣爱好
gratefulVisible: false,
formatNum: formatUserNumber,
cutOrgNamePath: cutOrgNamePath,
// userInfo: {},
ankingList: [],
answersList: [],
Popularity: [],
scorelist: [],
resonimg: [],
swiperOptiontwo: {
autoplay: false,
// noSwiping: true,
},
swiperOption: {
autoplay: {
delay: 2000,
disableOnInteraction: false, //解决滑动后不能轮播的问题
},
speed: 3000, //切换速度即slider自动滑动开始到结束的时间单位ms
loop: true, //循环切换
peed: 300, //循环速度
scrollbar: ".swiper-scrollbar",
pagination: {
el: ".swiper-pagination",
// type : 'progressbar', //分页器形状
clickable: true, //点击分页器的指示点分页器会控制Swiper切换
},
navigation: {
nextEl: ".swiper-button-next",
prevEl: ".swiper-button-prev",
},
},
couname: "",
isNext: true,
pageIndex: 1,
fileBaseUrl: process.env.VUE_APP_FILE_BASE_URL,
toScore,
// 列表
courseList: {
num: 12,
orderType: 2,
list: [],
pageSize: 10,
count: 0,
pageIndex: 1,
pageSize: 10,
},
caseList: {
num: 3,
orderType: 2,
list: [],
},
articleList: {
num: 4,
orderType: 2,
first: {
id: "",
authorInfo: {},
},
list: [],
},
qaList: {
num: 4,
orderType: "views",
list: [],
},
}
};
},
mounted() {
this.getCourseData(1);
this.getCaseData();
this.getArticleData();
this.getQaData();
this.couresreso();
this.getScoreList();
this.getPopularity();
this.getAnkingData();
this.getLevel();
this.getQaAnswers();
this.getLastStudy();
//检查兴趣爱好是否已填报,
//先检查本地session和 local 15天, 这两个值是在组件中设置的
let sessionHobby = sessionStorage.getItem(
"user-hobby-" + this.userInfo.aid
);
let localHobbyTime = localStorage.getItem("notYet" + this.userInfo.aid);
if (!sessionHobby) {
//只有session中不存在才会验证
//本地15天验证,localHobby,后续完善
let flag = true; //请求检查
if (localHobbyTime) {
let day =
(new Date() - new Date(localHobbyTime)) / (1000 * 60 * 60 * 24);
if (day < 15) {
flag = false;
}
}
if (flag) {
apiUserhobby.has().then((res) => {
if (res.status == 200) {
if (!res.result) {
//设置需要显示兴趣爱好收集窗口
this.userHobby.needShow = true;
}
} else {
console.log("兴趣爱好检查失败" + res.message);
}
//检查引导页
this.checkAndShowGuide();
});
} else {
this.checkAndShowGuide();
}
} else {
//检查引导页
this.checkAndShowGuide();
}
//this.$refs.userCollection.show();
},
computed: {
...mapGetters(["userInfo", "studyTaskCount"]),
@@ -242,171 +96,11 @@ export default {
loadData(pindex) {
console.log(pindex);
},
tylClick() {
window.open("https://m.qingxuetang.com/x/?appId=qxtcorp306130");
},
cylClick() {
window.open("https://u.boe.com/pc/course?keyword=创新力专区");
},
showClass(flag) {
if (flag) {
this.showUClass = flag;
}
},
uOnClick() {
this.showUClass = true;
},
setCurIdentity(iden) {
this.$store.dispatch("SetCurIdentity", iden);
},
closeJinian() {
this.showLoginMedal = false;
},
banJump(item) {
if (item.JumpUrl) {
window.open(item.JumpUrl);
}
},
//上次学习记录
getLastStudy() {
apiCourseStudy.lastStudy().then((res) => {
if (res.status === 200) {
this.lastStudy = res.result;
if (res.result != "" && res.result.courseId) {
this.overlayShow = true;
}
} else {
this.$message.error(res.message);
}
});
},
//检查并弹出引导页
checkAndShowGuide() {
//引导页弹框是否显示
//检查本地,减少服务器请求的次数
let localGuide = localStorage.getItem("user-guide-" + this.userInfo.aid);
if (!localGuide) {
apiGuide.hasUser().then((res) => {
if (res.status == 200) {
if (!res.result) {
this.$refs.guide.show();
} else {
if (this.userHobby.needShow) {
this.$refs.userCollection.show();
} else {
if (this.needLoginMedal) {
this.showLoginMedal = true;
}
}
}
localStorage.setItem("user-guide-" + this.userInfo.aid, 1);
} else {
console.log("获取引导页检查失败" + res.message);
//this.$message.error('')
if (this.userHobby.needShow) {
this.$refs.userCollection.show();
}
}
});
} else {
if (this.userHobby.needShow) {
this.$refs.userCollection.show();
} else {
if (this.needLoginMedal) {
this.showLoginMedal = true;
}
}
}
//测试情况下
// this.$refs.guide.show();
},
closeGuide() {
//关闭引导页
if (this.userHobby.needShow) {
//需要弹出兴趣收集页,弹出兴趣收集页
this.$refs.userCollection.show();
}
},
closeCollection() {
if (this.needLoginMedal) {
this.showLoginMedal = true;
}
},
jumstudy() {
this.$router.push({ path: "../views/study/TaskList.vue" });
},
jumcasedet(item) {
this.$router.push({ path: "/case/detail", query: { id: item.id } });
},
getPic(index) {
}, getPic(index) {
return this.webBaseUrl + "/images/listblue0" + (index + 1) + ".png";
},
getLevel() {
//获取经验值和等级
apiStat.getUserStatTotalInfo(this.userInfo.aid).then((res) => {
if (res.status == 200) {
this.userData = res.result;
//console.log(this.userData,'this.userData')
}
});
},
getQaAnswers() {
apiIndex.qaAnswers(10).then((res) => {
if (res.status == 200) {
this.answersList = res.result;
}
});
},
getAnkingData() {
// 文章排行榜
apiIndex.articleViews(10).then((res) => {
if (res.status == 200) {
this.ankingList = res.result;
}
});
},
getPopularity() {
//案例排行榜
apiCase.queryPraises(10).then((res) => {
if (res.status == 200) {
this.Popularity = res.result;
// console.log(this.Popularity)
}
});
},
getScoreList() {
//课程排行榜
apiCourse.scorelist(10, 1).then((res) => {
if (res.status == 200) {
res.result.forEach((item) => {
if (item.publishTime != "") {
item.coverImg = item.images;
let time = item.publishTime.split("-");
item.publishTime = `${time[0]}${time[1]}${time[2]}`;
}
});
this.scorelist = res.result;
//console.log(this.scorelist,'this.scorelist');
}
});
},
// bgfun(){
// console.log(this.$refs.bannimg[0]);
// this.$nextTick(() => {
// console.log(this.$refs.bannimg[0])
// })
// },
couresreso() {
let key = "index";
apiPlace.detail(key).then((res) => {
let lmj = JSON.parse(res.result.content);
this.resonimg = lmj;
});
},
jumUX() {
window.open("https://m.qingxuetang.com/x/?appId=qxtcorp306130", "_blank");
closeDlg() {
this.gratefulVisible = false
},
toCourseDetail(item) {
//二期调整,直接改成一个地址
@@ -429,22 +123,11 @@ export default {
//return $this.webBaseUrl + "/course/detail?id=" + item.id;
}
},
orderTypeFilter(val) {
this.courseList.orderType = val;
this.pageIndex = 1;
this.getCourseData();
},
nextPage() {
this.pageIndex += 1;
if (this.isNext) {
this.getCourseData(this.pageIndex);
}
},
getCourseData(pageIndex) {
this.isNext = false;
let { orderType, num } = this.courseList;
let course = {
pageSize: 6,
pageSize: 12,
device: 1,
orderField: orderType == 1 ? "" : "studys",
orderAsc: false,
@@ -468,169 +151,12 @@ export default {
});
this.loadCouserTeacher(res.result, courseIds);
this.courseList.list = res.result;
//this.couname = res.result.list.name;
// if (res.result.count - pageIndex * num < 8) {
// this.pageIndex = 0;
// }
// this.isNext = true;
// }
} else {
console.log("加载课程信息失败:" + res.error);
}
});
// apiCourse.list({orderType,num,device:1}).then(res => {
// if(res.status==200){
// if(res.result.length>0){
// let courseIds=[];
// res.result.forEach(item=>{
// item.authorInfo={aid:'',name:'',orgInfo:'',avatar:'',code:''};
// courseIds.push(item.id);
// })
// this.loadCouserTeacher(res.result,courseIds);
// this.courseList.list=res.result;
// }
// }else{
// console.log('加载课程信息失败:'+res.error);
// }
// })
},
// 去掉案例的推荐课程
// changeCaseOrder(val) {
// this.caseList.orderType = val;
// this.getCaseData();
// },
//案例的参数等着需要改
getCaseData() {
apiIndex.newCases().then((res) => {
if (res.status == 200) {
if (res.result.length > 0) {
let userIds = [];
res.result.forEach((item) => {
item.authorInfo = {
aid: "",
name: "",
orgInfo: "",
avatar: "",
code: "",
sex: null,
};
if (item.authorId && item.authorId != "") {
userIds.push(item.authorId);
}
});
this.caseList.list = res.result;
this.loadCaseAuthorInfo(res.result, userIds);
}
// this.caseList.list = res.result;
} else {
console.log("加载案例错误:" + res.error);
}
});
},
loadCaseAuthorInfo(list, ids) {
//加载作者信息,头像,机构信息
if (ids.length == 0) {
return;
}
const noReapetIds = [...new Set(ids)];
apiUser.getByIds(ids).then((res) => {
if (res.status == 200) {
list.forEach((item, index) => {
res.result.some((author) => {
if (author.aid == item.authorId) {
author.orgInfo = cutOrgNamePath(author.orgInfo, 1);
item.authorInfo = author;
return true;
} else {
return false;
}
});
});
} else {
console.log("加载用户信息失败:" + res.error);
//this.$message.error(res.message);
}
});
},
getArticleData() {
let $this = this;
this.articleList.list = [];
apiIndex.articlelist(this.articleList.orderType).then((res) => {
if (res.status == 200) {
if (res.result.length > 0) {
let userIds = [];
res.result.forEach((item, idx) => {
item.authorInfo = {
aid: "",
name: "",
orgInfo: "",
avatar: "",
code: "",
sex: null,
};
userIds.push(item.sysCreateAid);
if (idx == 0) {
$this.articleList.first = item;
} else {
$this.articleList.list.push(item);
}
});
// console.log(res.result, 'res.result');
this.loadAuthorInfo(res.result, userIds);
}
} else {
console.log("加载文章错误:" + res.error);
}
});
},
changeArticleOrder(val) {
this.articleList.orderType = val;
this.getArticleData();
},
getQaData() {
let params = {
pageSize: this.qaList.num,
orderAsc: false,
orderField: this.qaList.orderType,
};
// if (this.qaList.orderType == 2) {
// params.orderField = 'praises';
// }
apiQa.indexList(params).then((res) => {
if (res.status == 200) {
if (res.result.length > 0) {
let userIds = [];
res.result.forEach((item) => {
item.authorInfo = {
aid: "",
name: "",
orgInfo: "",
avatar: "",
code: "",
sex: null,
};
userIds.push(item.sysCreateAid);
});
this.qaList.list = res.result;
this.loadAuthorInfo(res.result, userIds);
}
} else {
console.log("加载问答错误:" + res.error);
}
//console.log(res)
});
},
changeQaOrder(val) {
this.qaList.orderType = val;
this.getQaData();
},
loadCouserTeacher(list, ids) {
let that = this;
// 先查课程关联教师iD
apiCourse.getTeacherByCourseIDs(ids).then((cres) => {
if (cres.status == 200) {
@@ -652,198 +178,19 @@ export default {
}
});
});
//that.loadCourseAuthorInfo(list, userIds);
}
});
},
loadCourseAuthorInfo(list, ids) {
//加载作者信息,头像,机构信息
if (ids.length == 0) {
return;
}
const noReapetIds = [...new Set(ids)];
apiUser.getByIds(ids).then((res) => {
if (res.status == 200) {
list.forEach((item, index) => {
res.result.some((author) => {
if (author.aid == item.authorInfo.aid) {
item.authorInfo = author;
return true;
} else {
return false;
}
});
});
} else {
console.log("加载用户信息失败:" + res.error);
}
});
},
loadAuthorInfo(list, ids) {
//加载作者信息,头像,机构信息
if (ids.length == 0) {
return;
}
const noReapetIds = [...new Set(ids)];
apiUser.getByIds(ids).then((res) => {
if (res.status == 200) {
list.forEach((item, index) => {
res.result.some((author) => {
if (author.aid == item.sysCreateAid) {
item.authorInfo = author;
return true;
} else {
return false;
}
});
});
} else {
console.log("加载用户信息失败:" + res.error);
}
});
},
jumpRouter(item) {
this.$router.push({
path: "/qa/answer",
query: {
id: item.id,
},
});
},
}
},
};
</script>
<style scoped lang="scss">
.gratefulBanner {
width: 100vw;
img {
width: 100%;
}
}
.xindex-course-image:hover {
transform: scale(1.3) translateY(-15px);
transition: all 0.6s;
}
.bannbox {
width: 100%;
height: 520px;
text-align: center;
filter: blur(5px);
z-index: -1;
background-size: 100% 100%;
}
::v-deep.swiper-slide .games .swiper-slide-active {
text-align: center !important;
}
#container {
position: absolute;
height: 520px;
top: 0;
width: 100%;
}
.banner-img {
height: 520px;
position: absolute;
top: 0;
left: 0;
right: 0;
transform: (-50%, -50%);
}
.course-banner {
height: 520px;
.swiper-button-prev {
height: 38px;
padding: 0 16px;
background: rgba($color: #000000, $alpha: 0.8) url("../../assets/images/icon/ban-left.png") no-repeat;
background-size: 12px 18px;
background-position: 16px 10px;
bottom: 66px;
border-radius: 19px 0 0 19px;
}
.swiper-button-next {
height: 38px;
// right: 52.65%;
bottom: 66px;
top: auto;
padding: 0 16px;
background: rgba($color: #000000, $alpha: 0.1) url("../../assets/images/icon/ban-right.png") no-repeat;
background-size: 12px 18px;
background-position: 6px 10px;
border-radius: 0 19px 19px 0;
}
.swiper-pagination-bullets {
// background: #000;
left: 60px;
bottom: 66px;
}
::v-deep .swiper-pagination {
line-height: 25px;
height: 32px;
border-radius: 19px;
// background: rgba($color: #000000, $alpha: 0.1);
width: auto;
left: 45%;
padding: 0 20px;
border-radius: 19px;
.swiper-pagination-bullet {
position: relative;
width: 25px;
height: 5px;
margin-top: 10px;
background: #fff;
opacity: 1 !important;
// background: rgba($color: #fff, $alpha: 0.5);
border-radius: 2px;
}
.swiper-pagination-bullet::before {
content: "";
position: absolute;
top: -20px;
bottom: -20px;
left: -2px;
right: -2px;
}
.swiper-pagination-bullet-active {
height: 5px;
opacity: 1 !important;
margin-top: 10px;
width: 25px;
background: #387df7;
// background: rgba($color: #fff, $alpha: 0.8);
border-radius: 2px;
}
.swiper-container {
// background-color: rgba($color: #000000, $alpha: 0.2);
}
}
}
.three-line-ellipsis {
overflow: hidden;
text-overflow: ellipsis;
box-sizing: border-box;
-webkit-line-clamp: 3;
word-break: break-all;
display: -webkit-box;
-webkit-box-orient: vertical;
}
.two-line-ellipsis {
display: -webkit-box;
@@ -853,148 +200,6 @@ export default {
box-sizing: border-box;
}
.course-card {
padding-bottom: 22px;
box-sizing: border-box;
position: relative;
background-color: #ffffff;
.course-image-box {
position: relative;
.course-type {
position: absolute;
top: 0px;
right: 0px;
width: 60px;
height: 24px;
line-height: 24px;
text-align: center;
background-color: #f99000;
border-radius: 2px 4px 2px 14px;
font-size: 12px;
color: #ffffff;
-moz-user-select: none;
/*火狐*/
-webkit-user-select: none;
/*webkit浏览器*/
-ms-user-select: none;
/*IE10*/
-khtml-user-select: none;
/*早期浏览器*/
user-select: none;
}
.course-type-title {
position: absolute;
top: 5px;
right: 0px;
width: 90px;
height: 30px;
line-height: 30px;
text-align: center;
color: #ffffff;
-moz-user-select: none;
/*火狐*/
-webkit-user-select: none;
/*webkit浏览器*/
-ms-user-select: none;
/*IE10*/
-khtml-user-select: none;
/*早期浏览器*/
user-select: none;
}
.course-flag {
height: 26px;
position: absolute;
top: 15px;
right: 0;
}
.course-tip {
width: 100%;
height: 26px;
position: absolute;
bottom: 0;
padding: 0 10px;
color: #fff;
font-size: 14px;
.course-study-count {
float: left;
}
.course-time {
float: right;
}
}
}
.course-title {
margin: 16px 0 16px 0;
height: 44px;
-moz-user-select: none;
/*火狐*/
-webkit-user-select: none;
/*webkit浏览器*/
-ms-user-select: none;
/*IE10*/
-khtml-user-select: none;
/*早期浏览器*/
user-select: none;
}
.course-title-box {
display: flex;
}
.course-author {
display: flex;
justify-content: space-between;
.course-author-left {
font-size: 14px;
color: #6e7b84;
-moz-user-select: none;
/*火狐*/
-webkit-user-select: none;
/*webkit浏览器*/
-ms-user-select: none;
/*IE10*/
-khtml-user-select: none;
/*早期浏览器*/
user-select: none;
}
}
.study-num {
font-size: 14px;
color: #6e7b84;
// margin-left: 12px;
-moz-user-select: none;
/*火狐*/
-webkit-user-select: none;
/*webkit浏览器*/
-ms-user-select: none;
/*IE10*/
-khtml-user-select: none;
/*早期浏览器*/
user-select: none;
}
.course-score {
padding: 10px 15px;
height: 40px;
display: flex;
justify-content: space-between;
align-items: center;
.course-score-star {
flex: 1;
}
}
}
// 内容部分
.modules {

View File

@@ -189,7 +189,7 @@ export default {
background: linear-gradient(180deg,
rgba(56, 125, 247, 0.2) 0%,
rgba(166, 168, 255, 0) 100%);
border-radius: 8px 8px 0 0;
border-radius: 8px 8px 0 0;
.title {
padding: 20px 20px 0 20px;
@@ -198,9 +198,10 @@ export default {
}
}
.content{
.content {
padding: 0 40px 40px;
}
.sear-but {
position: absolute;
bottom: 10%;