|
|
|
@ -1,56 +1,66 @@ |
|
|
|
|
<template> |
|
|
|
|
<div class="wrap index"> |
|
|
|
|
<div class="banner"></div> |
|
|
|
|
<div class="main"> |
|
|
|
|
<div class="center-wrap"> |
|
|
|
|
<div class="nav"> |
|
|
|
|
<p class="column-name">{{ $route.query.name }}</p> |
|
|
|
|
<el-menu |
|
|
|
|
v-if="menuList.length" |
|
|
|
|
unique-opened |
|
|
|
|
:default-active="defaultIndex" |
|
|
|
|
@select="initData"> |
|
|
|
|
<menuTree v-if="menuRefresh" :menuList="menuList"></menuTree> |
|
|
|
|
</el-menu> |
|
|
|
|
</div> |
|
|
|
|
<div class="list-wrap"> |
|
|
|
|
<div class="list"> |
|
|
|
|
<template v-if="listData.length"> |
|
|
|
|
<ul> |
|
|
|
|
<li v-for="(item,index) in listData" :key="index" @click="toArticle(item.id)"> |
|
|
|
|
<img :src="item.coverUrl" alt=""> |
|
|
|
|
<div class="text"> |
|
|
|
|
<div class="title">{{item.title}}</div> |
|
|
|
|
<div class="metas"> |
|
|
|
|
<span>作者:{{item.author}}</span> |
|
|
|
|
<i class="spe">|</i> |
|
|
|
|
<span>{{item.date.replace(' 00:00:00','')}}</span> |
|
|
|
|
<i class="spe">|</i> |
|
|
|
|
<span>浏览量:{{item.viewCount}}</span> |
|
|
|
|
</div> |
|
|
|
|
<div class="desc" :class="{ie: core.isIE() || core.isEdge(),firefox: core.isFirefox() || core.isEdge()}" v-html="item.content"></div> |
|
|
|
|
<a class="detail">查看详情 ></a> |
|
|
|
|
</div> |
|
|
|
|
</li> |
|
|
|
|
</ul> |
|
|
|
|
<div class="pagination"> |
|
|
|
|
<el-pagination background layout="total, prev, pager, next" :total="totals" @current-change="handleCurrentChange" :current-page="page"> |
|
|
|
|
</el-pagination> |
|
|
|
|
</div> |
|
|
|
|
</template> |
|
|
|
|
<template v-else> |
|
|
|
|
<div class="empty"> |
|
|
|
|
<div> |
|
|
|
|
<img src="@/assets/img/none.png" alt=""> |
|
|
|
|
<p>暂无资讯</p> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</template> |
|
|
|
|
<div class="wrap index"> |
|
|
|
|
<div class="banner"></div> |
|
|
|
|
<div class="main"> |
|
|
|
|
<div class="center-wrap"> |
|
|
|
|
<div class="nav"> |
|
|
|
|
<p class="column-name">{{ $route.query.name }}</p> |
|
|
|
|
<el-menu v-if="menuList.length" |
|
|
|
|
unique-opened |
|
|
|
|
:default-active="defaultIndex" |
|
|
|
|
@select="initData"> |
|
|
|
|
<menuTree v-if="menuRefresh" |
|
|
|
|
:menuList="menuList"></menuTree> |
|
|
|
|
</el-menu> |
|
|
|
|
</div> |
|
|
|
|
<div class="list-wrap"> |
|
|
|
|
<div class="list"> |
|
|
|
|
<template v-if="listData.length"> |
|
|
|
|
<ul> |
|
|
|
|
<li v-for="(item,index) in listData" |
|
|
|
|
:key="index" |
|
|
|
|
@click="toArticle(item.id)"> |
|
|
|
|
<img :src="item.coverUrl" |
|
|
|
|
alt=""> |
|
|
|
|
<div class="text"> |
|
|
|
|
<div class="title">{{item.title}}</div> |
|
|
|
|
<div class="metas"> |
|
|
|
|
<span>作者:{{item.author}}</span> |
|
|
|
|
<i class="spe">|</i> |
|
|
|
|
<span>{{item.date.replace(' 00:00:00','')}}</span> |
|
|
|
|
<i class="spe">|</i> |
|
|
|
|
<span>浏览量:{{item.viewCount}}</span> |
|
|
|
|
</div> |
|
|
|
|
<div class="desc" |
|
|
|
|
:class="{ie: core.isIE() || core.isEdge(),firefox: core.isFirefox() || core.isEdge()}" |
|
|
|
|
v-html="item.content"></div> |
|
|
|
|
<a class="detail">查看详情 ></a> |
|
|
|
|
</div> |
|
|
|
|
</li> |
|
|
|
|
</ul> |
|
|
|
|
<div class="pagination"> |
|
|
|
|
<el-pagination background |
|
|
|
|
layout="total, prev, pager, next" |
|
|
|
|
:total="totals" |
|
|
|
|
@current-change="handleCurrentChange" |
|
|
|
|
:current-page="page"> |
|
|
|
|
</el-pagination> |
|
|
|
|
</div> |
|
|
|
|
</template> |
|
|
|
|
<template v-else> |
|
|
|
|
<div class="empty"> |
|
|
|
|
<div> |
|
|
|
|
<img src="@/assets/img/none.png" |
|
|
|
|
alt=""> |
|
|
|
|
<p>暂无资讯</p> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</template> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</template> |
|
|
|
|
|
|
|
|
|
<script> |
|
|
|
@ -58,156 +68,147 @@ import { Loading } from 'element-ui'; |
|
|
|
|
import menuTree from '@/components/menuTree' |
|
|
|
|
import { mapActions } from "vuex"; |
|
|
|
|
export default { |
|
|
|
|
name: 'information', |
|
|
|
|
data() { |
|
|
|
|
return { |
|
|
|
|
keyword: '', |
|
|
|
|
historyId: this.$store.state.info.columnId, |
|
|
|
|
defaultIndex: '', |
|
|
|
|
menuList: [], |
|
|
|
|
page: 1, |
|
|
|
|
pageSize: 10, |
|
|
|
|
totals: 0, |
|
|
|
|
listData: [], |
|
|
|
|
loadIns: null, |
|
|
|
|
columnId: '', |
|
|
|
|
menuRefresh: false, |
|
|
|
|
deepId: '', |
|
|
|
|
columnNames: [] |
|
|
|
|
}; |
|
|
|
|
}, |
|
|
|
|
components: { |
|
|
|
|
menuTree |
|
|
|
|
name: 'information', |
|
|
|
|
data () { |
|
|
|
|
return { |
|
|
|
|
historyId: this.$store.state.info.columnId, |
|
|
|
|
defaultIndex: '', |
|
|
|
|
menuList: [], |
|
|
|
|
page: +this.$route.query.page || 1, |
|
|
|
|
pageSize: 10, |
|
|
|
|
totals: 0, |
|
|
|
|
listData: [], |
|
|
|
|
loadIns: null, |
|
|
|
|
columnId: '', |
|
|
|
|
menuRefresh: false, |
|
|
|
|
deepId: '', |
|
|
|
|
columnNames: [] |
|
|
|
|
}; |
|
|
|
|
}, |
|
|
|
|
components: { |
|
|
|
|
menuTree |
|
|
|
|
}, |
|
|
|
|
watch: { |
|
|
|
|
$route () { |
|
|
|
|
this.getData() |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
mounted () { |
|
|
|
|
this.getData() |
|
|
|
|
}, |
|
|
|
|
methods: { |
|
|
|
|
...mapActions("info", [ |
|
|
|
|
"setColumnId" |
|
|
|
|
]), |
|
|
|
|
async getData () { |
|
|
|
|
this.deepId = '' |
|
|
|
|
const { parentId } = this.$route.query |
|
|
|
|
this.setColumnId('') |
|
|
|
|
this.loadIns = Loading.service() |
|
|
|
|
|
|
|
|
|
let res = null |
|
|
|
|
let data = null |
|
|
|
|
// 有parentId就查职站的栏目,没有就查中台的 |
|
|
|
|
if (parentId) { |
|
|
|
|
// 查询职站栏目 |
|
|
|
|
res = await this.$get(this.api.queryAllColumns) |
|
|
|
|
data = res.columnTree |
|
|
|
|
data = res.columnTree.find(e => e.id == parentId).children |
|
|
|
|
} else { |
|
|
|
|
// 查询中台栏目 |
|
|
|
|
res = await this.$get(this.api.queryAllColumns, { |
|
|
|
|
school: 0 |
|
|
|
|
}) |
|
|
|
|
data = res.columnTree |
|
|
|
|
} |
|
|
|
|
if (data.length) { |
|
|
|
|
this.menuRefresh = false |
|
|
|
|
this.menuList = data |
|
|
|
|
// 从文章页返回的情况,需要回到之前进文章页的那个分类 |
|
|
|
|
const historyId = this.historyId |
|
|
|
|
if (historyId) { |
|
|
|
|
this.setColumnId('') |
|
|
|
|
this.defaultIndex = historyId + '' |
|
|
|
|
this.getContent(historyId) |
|
|
|
|
} else { |
|
|
|
|
// 正常情况默认展示第一个分类下的文章列表 |
|
|
|
|
data.length && this.getDeepId(data) |
|
|
|
|
const id = this.deepId |
|
|
|
|
if (id) { |
|
|
|
|
this.getContent(id) |
|
|
|
|
this.defaultIndex = id + '' |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
this.$nextTick(() => { |
|
|
|
|
this.menuRefresh = true |
|
|
|
|
}) |
|
|
|
|
} else { |
|
|
|
|
this.menuList = [] |
|
|
|
|
parentId ? |
|
|
|
|
this.getContent(parentId) : |
|
|
|
|
(this.listData = []) |
|
|
|
|
this.loadIns.close() |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
watch: { |
|
|
|
|
keyword: function(val) { |
|
|
|
|
clearTimeout(this.searchTimer) |
|
|
|
|
this.searchTimer = setTimeout(() => { |
|
|
|
|
this.getData() |
|
|
|
|
},500) |
|
|
|
|
}, |
|
|
|
|
$route() { |
|
|
|
|
this.getData() |
|
|
|
|
// 获取最深的层级的id |
|
|
|
|
getDeepId (data) { |
|
|
|
|
data.map(e => { |
|
|
|
|
if (e.children.length) { |
|
|
|
|
this.getDeepId(e.children) |
|
|
|
|
} else if (!this.deepId) { |
|
|
|
|
this.deepId = e.id |
|
|
|
|
return false |
|
|
|
|
} |
|
|
|
|
}) |
|
|
|
|
}, |
|
|
|
|
mounted() { |
|
|
|
|
this.getData() |
|
|
|
|
initData (index, indexPath) { |
|
|
|
|
this.page = 1 |
|
|
|
|
this.getContent(index, indexPath) |
|
|
|
|
}, |
|
|
|
|
methods: { |
|
|
|
|
...mapActions("info", [ |
|
|
|
|
"setColumnId" |
|
|
|
|
]), |
|
|
|
|
async getData() { |
|
|
|
|
this.deepId = '' |
|
|
|
|
const { parentId } = this.$route.query |
|
|
|
|
this.setColumnId('') |
|
|
|
|
this.loadIns = Loading.service() |
|
|
|
|
|
|
|
|
|
let res = null |
|
|
|
|
let data = null |
|
|
|
|
// 有parentId就查职站的栏目,没有就查中台的 |
|
|
|
|
if (parentId) { |
|
|
|
|
// 查询职站栏目 |
|
|
|
|
res = await this.$get(this.api.queryAllColumns) |
|
|
|
|
data = res.columnTree |
|
|
|
|
data = res.columnTree.find(e => e.id == parentId).children |
|
|
|
|
} else { |
|
|
|
|
// 查询中台栏目 |
|
|
|
|
res = await this.$get(this.api.queryAllColumns, { |
|
|
|
|
school: 0 |
|
|
|
|
}) |
|
|
|
|
data = res.columnTree |
|
|
|
|
} |
|
|
|
|
if (data.length) { |
|
|
|
|
this.menuRefresh = false |
|
|
|
|
this.menuList = data |
|
|
|
|
// 从文章页返回的情况,需要回到之前进文章页的那个分类 |
|
|
|
|
const historyId = this.historyId |
|
|
|
|
if (historyId) { |
|
|
|
|
this.setColumnId('') |
|
|
|
|
this.defaultIndex = historyId + '' |
|
|
|
|
this.getContent(historyId) |
|
|
|
|
} else { |
|
|
|
|
// 正常情况默认展示第一个分类下的文章列表 |
|
|
|
|
data.length && this.getDeepId(data) |
|
|
|
|
const id = this.deepId |
|
|
|
|
if (id) { |
|
|
|
|
this.getContent(id) |
|
|
|
|
this.defaultIndex = id + '' |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
this.$nextTick(() => { |
|
|
|
|
this.menuRefresh = true |
|
|
|
|
}) |
|
|
|
|
} else { |
|
|
|
|
this.menuList = [] |
|
|
|
|
parentId ? |
|
|
|
|
this.getContent(parentId) : |
|
|
|
|
(this.listData = []) |
|
|
|
|
this.loadIns.close() |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
// 获取最深的层级的id |
|
|
|
|
getDeepId(data) { |
|
|
|
|
data.map(e => { |
|
|
|
|
if (e.children.length) { |
|
|
|
|
this.getDeepId(e.children) |
|
|
|
|
} else if (!this.deepId) { |
|
|
|
|
this.deepId = e.id |
|
|
|
|
return false |
|
|
|
|
} |
|
|
|
|
}) |
|
|
|
|
}, |
|
|
|
|
initData(index,indexPath){ |
|
|
|
|
this.page = 1 |
|
|
|
|
this.getContent(index,indexPath) |
|
|
|
|
}, |
|
|
|
|
getContent(index,indexPath){ |
|
|
|
|
if(indexPath) this.loadIns = Loading.service() |
|
|
|
|
this.columnId = index |
|
|
|
|
this.$get(`${this.api.queryArticleByCondition}/${this.page}/${this.pageSize}`, { |
|
|
|
|
name: this.keyword, |
|
|
|
|
columnId: index, |
|
|
|
|
port: 0, |
|
|
|
|
school: this.$route.query.parentId ? '' : 0 |
|
|
|
|
}).then(res => { |
|
|
|
|
this.listData = res.articleList |
|
|
|
|
this.totals = res.total |
|
|
|
|
this.listData.map(n => { |
|
|
|
|
n.content = n.content.replace(/<img.*?(?:>|\/>)/gi,'') |
|
|
|
|
}) |
|
|
|
|
this.loadIns.close() |
|
|
|
|
}).catch(res => { |
|
|
|
|
this.loadIns.close() |
|
|
|
|
}); |
|
|
|
|
}, |
|
|
|
|
handleCurrentChange(val) { |
|
|
|
|
this.page = val; |
|
|
|
|
this.getContent(this.columnId); |
|
|
|
|
}, |
|
|
|
|
// 获取该文章所属的所有栏目名称 |
|
|
|
|
getColumnName(data, names = []) { |
|
|
|
|
for (let i = 0; i < data.length; i++) { |
|
|
|
|
const e = data[i] |
|
|
|
|
names.push(e.name) |
|
|
|
|
if (e.id == this.columnId) { |
|
|
|
|
console.log("🚀 ~ file: index.vue ~ line 188 ~ getColumnName ~ this.defaultIndex", this.defaultIndex) |
|
|
|
|
this.columnNames = JSON.parse(JSON.stringify(names)) |
|
|
|
|
break |
|
|
|
|
} else { |
|
|
|
|
this.getColumnName(e.children, names) |
|
|
|
|
} |
|
|
|
|
names = [] |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
toArticle(id) { |
|
|
|
|
const columnId = this.columnId |
|
|
|
|
this.setColumnId(columnId) |
|
|
|
|
this.getColumnName(this.menuList, []) |
|
|
|
|
console.log("🚀 ~ file: index.vue ~ line 199 ~ toArticle ~ menuList", this.columnNames) |
|
|
|
|
this.$router.push(`/${this.$route.path === '/info/list' ? 'info' : 'preInfo'}/details?parentId=${this.$route.query.parentId}&name=${this.$route.query.name}&id=${id}&columnNames=${this.columnNames}`) |
|
|
|
|
getContent (index, indexPath) { |
|
|
|
|
if (indexPath) this.loadIns = Loading.service() |
|
|
|
|
this.columnId = index |
|
|
|
|
this.$get(`${this.api.queryArticleByCondition}/${this.page}/${this.pageSize}`, { |
|
|
|
|
name: '', |
|
|
|
|
columnId: index, |
|
|
|
|
port: 0, |
|
|
|
|
school: this.$route.query.parentId ? '' : 0 |
|
|
|
|
}).then(res => { |
|
|
|
|
this.listData = res.articleList |
|
|
|
|
this.totals = res.total |
|
|
|
|
this.listData.map(n => { |
|
|
|
|
n.content = n.content.replace(/<img.*?(?:>|\/>)/gi, '') |
|
|
|
|
}) |
|
|
|
|
this.loadIns.close() |
|
|
|
|
}).catch(res => { |
|
|
|
|
this.loadIns.close() |
|
|
|
|
}); |
|
|
|
|
}, |
|
|
|
|
handleCurrentChange (val) { |
|
|
|
|
this.page = val; |
|
|
|
|
this.getContent(this.columnId); |
|
|
|
|
}, |
|
|
|
|
// 获取该文章所属的所有栏目名称 |
|
|
|
|
getColumnName (data, names = []) { |
|
|
|
|
for (let i = 0; i < data.length; i++) { |
|
|
|
|
const e = data[i] |
|
|
|
|
names.push(e.name) |
|
|
|
|
if (e.id == this.columnId) { |
|
|
|
|
this.columnNames = JSON.parse(JSON.stringify(names)) |
|
|
|
|
break |
|
|
|
|
} else { |
|
|
|
|
this.getColumnName(e.children, names) |
|
|
|
|
} |
|
|
|
|
names = [] |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
toArticle (id) { |
|
|
|
|
const columnId = this.columnId |
|
|
|
|
this.setColumnId(columnId) |
|
|
|
|
this.getColumnName(this.menuList, []) |
|
|
|
|
this.$router.push(`/${this.$route.path === '/info/list' ? 'info' : 'preInfo'}/details?parentId=${this.$route.query.parentId}&name=${this.$route.query.name}&id=${id}&columnNames=${this.columnNames}&page=${this.page}`) |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
}; |
|
|
|
|
</script> |
|
|
|
|
|
|
|
|
@ -216,46 +217,45 @@ export default { |
|
|
|
|
.banner { |
|
|
|
|
height: 350px; |
|
|
|
|
padding: 100px 0 0 180px; |
|
|
|
|
background: url(../../../assets/img/info-bg6.png) (0 0)/auto no-repeat, |
|
|
|
|
url(../../../assets/img/info-bg7.png) (25% 110px)/400px auto no-repeat, |
|
|
|
|
url(../../../assets/img/info-bg4.png) (top right)/auto no-repeat, |
|
|
|
|
url(../../../assets/img/info-bg5.png) (80% 20px)/auto no-repeat, |
|
|
|
|
url(../../../assets/img/info-bg3.png) 0 0/100% 100% no-repeat; |
|
|
|
|
background: url(../../../assets/img/info-bg6.png) (0 0) / auto no-repeat, |
|
|
|
|
url(../../../assets/img/info-bg7.png) (25% 110px)/400px auto no-repeat, |
|
|
|
|
url(../../../assets/img/info-bg4.png) (top right) / auto no-repeat, |
|
|
|
|
url(../../../assets/img/info-bg5.png) (80% 20px) / auto no-repeat, url(../../../assets/img/info-bg3.png) 0 0/100% 100% no-repeat; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
.main{ |
|
|
|
|
.main { |
|
|
|
|
min-height: calc(100vh - 524px); |
|
|
|
|
background: url(../../../assets/img/info-bg1.png) (0px 179px)/(190px 171px) no-repeat, |
|
|
|
|
url(../../../assets/img/info-bg2.png) (bottom right)/(407px 273px) no-repeat; |
|
|
|
|
background: url(../../../assets/img/info-bg1.png) (0px 179px)/ (190px 171px) no-repeat, |
|
|
|
|
url(../../../assets/img/info-bg2.png) (bottom right)/ (407px 273px) no-repeat; |
|
|
|
|
.center-wrap { |
|
|
|
|
display: flex; |
|
|
|
|
justify-content: center; |
|
|
|
|
align-items:flex-start; |
|
|
|
|
align-items: flex-start; |
|
|
|
|
} |
|
|
|
|
.column-name { |
|
|
|
|
padding: 14px 0; |
|
|
|
|
margin-bottom: 10px; |
|
|
|
|
font-size: 16px; |
|
|
|
|
text-align: center; |
|
|
|
|
color: #fff; |
|
|
|
|
background-color: #007eff; |
|
|
|
|
border-radius: 8px; |
|
|
|
|
padding: 14px 0; |
|
|
|
|
margin-bottom: 10px; |
|
|
|
|
font-size: 16px; |
|
|
|
|
text-align: center; |
|
|
|
|
color: #fff; |
|
|
|
|
background-color: #007eff; |
|
|
|
|
border-radius: 8px; |
|
|
|
|
} |
|
|
|
|
.nav{ |
|
|
|
|
.nav { |
|
|
|
|
width: 156px; |
|
|
|
|
overflow: hidden; |
|
|
|
|
.el-menu { |
|
|
|
|
border-right: 0; |
|
|
|
|
.el-submenu__icon-arrow { |
|
|
|
|
display: none; |
|
|
|
|
display: none; |
|
|
|
|
} |
|
|
|
|
.el-submenu__title { |
|
|
|
|
padding-right: 40px; |
|
|
|
|
color: #1182f5; |
|
|
|
|
background-color: #c6e7ff; |
|
|
|
|
.el-submenu__title { |
|
|
|
|
padding-right: 60px; |
|
|
|
|
} |
|
|
|
|
padding-right: 40px; |
|
|
|
|
color: #1182f5; |
|
|
|
|
background-color: #c6e7ff; |
|
|
|
|
.el-submenu__title { |
|
|
|
|
padding-right: 60px; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
.el-menu-item { |
|
|
|
|
min-width: auto; |
|
|
|
@ -284,11 +284,11 @@ export default { |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
.list-wrap{ |
|
|
|
|
.list-wrap { |
|
|
|
|
width: calc(100% - 180px); |
|
|
|
|
margin-left: 24px; |
|
|
|
|
.list{ |
|
|
|
|
li{ |
|
|
|
|
.list { |
|
|
|
|
li { |
|
|
|
|
display: flex; |
|
|
|
|
margin-bottom: 12px; |
|
|
|
|
cursor: pointer; |
|
|
|
@ -297,52 +297,52 @@ export default { |
|
|
|
|
border-radius: 6px; |
|
|
|
|
overflow: hidden; |
|
|
|
|
|
|
|
|
|
img{ |
|
|
|
|
img { |
|
|
|
|
width: 260px; |
|
|
|
|
height: 195px; |
|
|
|
|
border: 0; |
|
|
|
|
} |
|
|
|
|
.text{ |
|
|
|
|
.text { |
|
|
|
|
position: relative; |
|
|
|
|
width: calc(100% - 260px); |
|
|
|
|
padding: 20px 24px; |
|
|
|
|
.title{ |
|
|
|
|
.title { |
|
|
|
|
font-size: 20px; |
|
|
|
|
color: #0B1D30; |
|
|
|
|
color: #0b1d30; |
|
|
|
|
font-weight: 500; |
|
|
|
|
overflow: hidden; |
|
|
|
|
text-overflow:ellipsis; |
|
|
|
|
text-overflow: ellipsis; |
|
|
|
|
white-space: nowrap; |
|
|
|
|
} |
|
|
|
|
.metas{ |
|
|
|
|
.metas { |
|
|
|
|
display: inline-flex; |
|
|
|
|
align-items: center; |
|
|
|
|
width: 100%; |
|
|
|
|
margin: 10px 0; |
|
|
|
|
font-size: 12px; |
|
|
|
|
color: rgba(0,0,0,.45); |
|
|
|
|
color: rgba(0, 0, 0, 0.45); |
|
|
|
|
.spe { |
|
|
|
|
margin: 0 10px; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
.desc{ |
|
|
|
|
.desc { |
|
|
|
|
font-size: 14px; |
|
|
|
|
color: #333; |
|
|
|
|
line-height: 24px; |
|
|
|
|
display: -webkit-box; |
|
|
|
|
display:-moz-box; |
|
|
|
|
display: -moz-box; |
|
|
|
|
-webkit-box-orient: vertical; |
|
|
|
|
-moz-box-orient: vertical; |
|
|
|
|
-webkit-line-clamp: 2; |
|
|
|
|
-moz-line-clamp: 2; |
|
|
|
|
overflow: hidden; |
|
|
|
|
text-overflow: ellipsis; |
|
|
|
|
&.ie{ |
|
|
|
|
&.ie { |
|
|
|
|
height: 80px; |
|
|
|
|
text-overflow: ellipsis; |
|
|
|
|
white-space: nowrap; |
|
|
|
|
} |
|
|
|
|
&.firefox{ |
|
|
|
|
&.firefox { |
|
|
|
|
height: 76px; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|