first commit

This commit is contained in:
编码猿
2024-09-27 02:06:13 +08:00
commit 852d94fbb9
36760 changed files with 3274413 additions and 0 deletions

View File

@@ -0,0 +1,41 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
#about {
height: 2000px;
background: red;
transition: all ease 3s;
}
#joinme {
height: 2000px;
background: blue;
transition: all ease 3s;
}
#connect {
height: 2000px;
background: yellow;
transition: all ease 3s;
}
</style>
</head>
<body>
<a href="#about">关于我</a>
<a href="#connect">联系</a>
<a href="#joinme">加入我们</a>
<div id="about"></div>
<div id="joinme"></div>
<div id="connect"></div>
</body>
</html>

View File

@@ -0,0 +1,16 @@
/* 专门用来重置浏览器默认样式的 */
body, p,ul,li,h1,h2,h3,h4,h5,h6,input{
margin: 0;
padding: 0;
}
input {
outline: none;
}
li {
list-style: none;
}
a {
text-decoration: none;
}

View File

@@ -0,0 +1,258 @@
.header {
}
.logo {
padding-top: 27px;
width: 123px;
}
.HeadMenu {
height: 95px;
}
.menu {
margin-left: 74px;
}
.menu li,
.login li {
float: left;
height: 95px;
line-height: 95px;
}
.menu li {
padding: 0 17px;
}
.menu li a {
color: #858585;
font-size: 16px;
}
.menu input {
width: 320px;
height: 34px;
border: 1px solid #e4e4e4;
border-radius: 8px;
padding: 0 10px;
box-sizing: border-box;
background: url("../img/search.png") no-repeat;
background-size: 22px;
background-position: 285px;
}
.active {
color:#000 !important;
font-weight: 400;
}
.login {
margin-right: 41px;
}
.login li:nth-child(2) {
width: 1px;
height: 17px;
background: #d8d8d8;
margin: 0 20px;
margin-top: 40px;
}
.login a {
color: #333;
}
.HeadType {
overflow: hidden;
height: 38px;
background-color: #fafafa;
line-height: 38px;
}
.HeadType ul li {
float: left;
}
.HeadType a {
padding: 8px 2.5%;
font-size: 16px;
color: #333;
}
.menu_active {
color: #e13228 !important;
}
.PopularSongist {
width: 790px;
overflow: hidden;
padding-top: 23px;
margin-right: 40px;
}
.list li{
width: 175px;
height: 204px;
float: left;
margin-right: 30px;
}
.list li:nth-child(4){
margin-right: 0 !important;
}
.list li a{
display: block;
margin-top: 10px;
}
.list li:hover .play{
opacity: 1 !important;
}
.list li:hover img{
transform: scale(1.05);
}
.top {
width: 175px;
height: 175px;
position: relative;
overflow: hidden;
}
.top img{
width: 100%;
height: 100%;
transition: all ease 0.6s;
}
.play {
position: absolute;
width: 38px;
height: 38px;
border-radius: 100%;
background: #00000096;
line-height: 38px;
top: 50%;
left: 50%;
margin-top: calc(-38px / 2);
margin-left: calc(-38px / 2);
transition: all ease 0.6s;
opacity: 0;
}
.icon-play {
color: #fff;
text-align: center;
margin-left: 13px;
}
.title {
overflow: hidden;
height: 38px;
line-height: 38px;
margin-bottom: 25px;
}
.title img {
height: 20px;
margin-top: 16px;
}
.title .left h2 {
display: inline-block;
margin-right: 15px;
font-size: 24px;
color: #333;
font-weight: 300;
}
.title .left span {
font-size: 14px;
color: #999;
}
.content_right {
padding-top: 23px;
width: 350px;
}
.ge_list {
display: flex;
flex-wrap: wrap;
}
.ge_list li {
width: 105px;
text-align: center;
line-height: 42px;
height: 42px;
border: 1px solid #ededed;
border-radius: 40px;
margin-bottom: 15px;
margin-right: 15px;
box-sizing: border-box;
}
.ge_list li:nth-child(3n){
margin-right: 0 !important;
}
.dt_title {
display: flex;
flex-wrap: wrap;
margin-left: -28px;
margin-right: 28px
}
.dt_title li {
text-align: center;
width: 25%;
margin-bottom: 20px;
}
.dt_title li img {
width: 50px;
}
.dt_title li p {
font-size: 14px;
color: #333;
}
.phb_ul {
display: flex;
justify-content: space-between;
}
.dddd {
overflow: hidden;
}
.phb_ul li{
width: 380px;
border: 1px solid rgba(91,148,0,.3);
height: 544px;
}
.phb_ul li .ph_title{
display: flex;
justify-content: space-between;
padding: 0 10px;
height:66px;
align-items: center;
background-color: rgba(91,148,0,.1);
}
.ph_title img{
width: 30px;
height: 30px;
}
.phb_ul li .ph_list{
display: flex;
justify-content: space-between;
padding-left: 20px;
padding-right: 10px;
padding-top: 10px;
padding-bottom: 10px;
align-items: center;
}
.ph_list:hover {
background: #8d8d8d;
}
.ph_list:hover .list_r {
display: block;
}
.list_l {
display: flex;
}
.list_l .num {
font-size: 18px;
color: #5b9400;
margin-right: 14px;
}
.list_l img {
width: 50px;
height: 50px;
margin-right: 10px;
}
.list_l p {
font-size: 14px;
color: #333;
}
.list_l p+span {
font-size: 14px;
color: #999;
}
.list_r {
display: none;
}
.list_r i{
font-size: 50px;
}

View File

@@ -0,0 +1,21 @@
/* 存放公共css的 */
.theme_red {
color: blue;
}
.left {
float: left;
}
.right {
float: right;
}
.w-1200 {
width: 1200px;
margin: 0 auto;
}
.center {
text-align: center;
}

View File

@@ -0,0 +1,138 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<link rel="stylesheet" href="./css/clear.css">
<link rel="stylesheet" href="./css/public.css">
<style>
body,a,h1,h2,h3,h4,h5,h6,p{
margin: 0;
padding: 0;
list-style: none;
}
.main {
width: 1200px;
margin: 0 auto;
}
.title {
margin-bottom: 20px;
}
.t_name {
font-size: 28px;
font-weight: 600;
margin-right: 12px;
}
.t_more {
font-size: 14px;
color: #999;
}
.content {
position: relative;
}
.left {
height: 50px;
position: absolute;
left: -70px;
top: 50%;
margin-top: -25px;
}
.right {
height: 50px;
position: absolute;
right: -70px;
top: 50%;
margin-top: -25px;
}
.img {
overflow: hidden;
}
.img li {
text-align: center;
float: left;
margin-right: 30px;
}
.img li img {
width: 170px;
margin-bottom: 10px;
}
.img li span {
font-size: 14px;
color: #999;
}
.yd {
position: absolute;
bottom: -35px;
left: 50%;
margin-left: -60px;
}
.yd li {
width: 15px;
height: 15px;
border-radius: 100%;
background-color: red;
float: left;
margin-right: 5px;
}
</style>
</head>
<body>
<div class="main">
<div class="title">
<span class="t_name">新歌首发</span>
<span class="t_more">更多</span>
</div>
<div class="content">
<ul class="img">
<li>
<img src="http://business.cdn.qianqian.com/qianqian/pic/bos_client_1595816932f6b97e50664a9784d18ffbd6b53a5d0a.jpg@s_2,w_346,h_346" alt="">
<p>千千音乐新歌速递</p>
<span>新歌抢鲜听</span>
</li>
<li>
<img src="http://business.cdn.qianqian.com/qianqian/pic/bos_client_1595816932f6b97e50664a9784d18ffbd6b53a5d0a.jpg@s_2,w_346,h_346" alt="">
<p>千千音乐新歌速递</p>
<span>新歌抢鲜听</span>
</li>
<li>
<img src="http://business.cdn.qianqian.com/qianqian/pic/bos_client_1595816932f6b97e50664a9784d18ffbd6b53a5d0a.jpg@s_2,w_346,h_346" alt="">
<p>千千音乐新歌速递</p>
<span>新歌抢鲜听</span>
</li>
<li>
<img src="http://business.cdn.qianqian.com/qianqian/pic/bos_client_1595816932f6b97e50664a9784d18ffbd6b53a5d0a.jpg@s_2,w_346,h_346" alt="">
<p>千千音乐新歌速递</p>
<span>新歌抢鲜听</span>
</li>
<li>
<img src="http://business.cdn.qianqian.com/qianqian/pic/bos_client_1595816932f6b97e50664a9784d18ffbd6b53a5d0a.jpg@s_2,w_346,h_346" alt="">
<p>千千音乐新歌速递</p>
<span>新歌抢鲜听</span>
</li>
<li>
<img src="http://business.cdn.qianqian.com/qianqian/pic/bos_client_1595816932f6b97e50664a9784d18ffbd6b53a5d0a.jpg@s_2,w_346,h_346" alt="">
<p>千千音乐新歌速递</p>
<span>新歌抢鲜听</span>
</li>
</ul>
<ul class="yd">
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
<img class="left" src="./left.png" alt="">
<img class="right" src="./right.png" alt="">
</div>
</div>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.1 KiB

View File

@@ -0,0 +1,523 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>仿千千音乐</title>
<link rel="stylesheet" href="./css/clear.css">
<link rel="stylesheet" href="http://at.alicdn.com/t/font_1975352_h4zy9ddaafo.css">
<link rel="stylesheet" href="./css/public.css">
<link rel="stylesheet" href="./css/index.css">
<link rel="stylesheet" href="http://at.alicdn.com/t/font_1978518_3wtzoq7jqmv.css">
</head>
<body>
<div class="header">
<div class="HeadMenu">
<div class="w-1200">
<a class="left" href="http://music.taihe.com/">
<img class="logo" src="http://static1.qianqian.com/web/s/images/logo_2x.5109f00405b21eca.png"
alt="">
</a>
<ul class="menu left">
<li><a class="active" href="">发现音乐</a></li>
<li><a href="">随心听</a></li>
<li><a href="">客户端</a></li>
<li><a href="">VIP</a></li>
<li><a href="">音乐人</a></li>
<li><a href="">演出</a></li>
<li>
<input type="text" placeholder="请输入歌名、歌词、歌手或专辑">
</li>
</ul>
<ul class="login right">
<li>
<a href="">登录</a>
</li>
<li>
</li>
<li>
<a href="">注册</a>
</li>
</ul>
</div>
</div>
<div class="HeadType">
<div class="w-1200 center">
<a class="menu_active" href="">推荐</a>
<a href="">歌单</a>
<a href="">歌手</a>
<a href="">榜单</a>
<a href="">分类</a>
<a href="">MV</a>
<a href="">U榜</a>
</div>
</div>
</div>
<div class="content">
<div class="w-1200">
<div class="dddd">
<div class="PopularSongist left">
<div class="title">
<div class="left">
<h2>热门歌单</h2>
<span>更多</span>
</div>
<img class="right" src="./img/next.png" alt="">
</div>
<ul class="list">
<li>
<div class="top">
<img src="http://musicugc.cdn.qianqian.com/ugcdiy/pic/58adc19c9ecc88077504e852ed33a22d.jpg@s_2,w_346,h_346"
alt="">
<div class="play">
<i class="iconfont icon-play"></i>
</div>
</div>
<a class="info">防弹少年团BTS</a>
</li>
<li>
<div class="top">
<img src="http://musicugc.cdn.qianqian.com/ugcdiy/pic/58adc19c9ecc88077504e852ed33a22d.jpg@s_2,w_346,h_346"
alt="">
<div class="play">
<i class="iconfont icon-play"></i>
</div>
</div>
<a class="info">防弹少年团BTS</a>
</li>
<li>
<div class="top">
<img src="http://musicugc.cdn.qianqian.com/ugcdiy/pic/58adc19c9ecc88077504e852ed33a22d.jpg@s_2,w_346,h_346"
alt="">
<div class="play">
<i class="iconfont icon-play"></i>
</div>
</div>
<a class="info">防弹少年团BTS</a>
</li>
<li>
<div class="top">
<img src="http://musicugc.cdn.qianqian.com/ugcdiy/pic/58adc19c9ecc88077504e852ed33a22d.jpg@s_2,w_346,h_346"
alt="">
<div class="play">
<i class="iconfont icon-play"></i>
</div>
</div>
<a class="info">防弹少年团BTS</a>
</li>
<li>
<div class="top">
<img src="http://musicugc.cdn.qianqian.com/ugcdiy/pic/58adc19c9ecc88077504e852ed33a22d.jpg@s_2,w_346,h_346"
alt="">
<div class="play">
<i class="iconfont icon-play"></i>
</div>
</div>
<a class="info">防弹少年团BTS</a>
</li>
</ul>
</div>
<div class="content_right left">
<div class="fltg">
<div class="title">
<div class="left">
<h2>热门歌单</h2>
<span>更多</span>
</div>
</div>
<ul class="ge_list">
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
<li>6</li>
<li>7</li>
<li>8</li>
<li>9</li>
<li>10</li>
<li>11</li>
<li>12</li>
</ul>
</div>
<div class="tjdt">
<div class="title">
<div class="left">
<h2>热门歌单</h2>
<span>更多</span>
</div>
</div>
<ul class="dt_title">
<li>
<img src="./img/icon_dd.png" alt="">
<p>随便听听</p>
</li>
<li>
<img src="./img/icon_dd.png" alt="">
<p>随便</p>
</li>
<li>
<img src="./img/icon_dd.png" alt="">
<p>随便听听</p>
</li>
<li>
<img src="./img/icon_dd.png" alt="">
<p>听听</p>
</li>
<li>
<img src="./img/icon_dd.png" alt="">
<p>随便听听</p>
</li>
<li>
<img src="./img/icon_dd.png" alt="">
<p>随听</p>
</li>
<li>
<img src="./img/icon_dd.png" alt="">
<p>随便听听</p>
</li>
<li>
<img src="./img/icon_dd.png" alt="">
<p>随便听听</p>
</li>
</ul>
</div>
</div>
</div>
<div class="pic"></div>
<div class="phb">
<div class="title">
<div class="left">
<h2>排行榜</h2>
<span>更多</span>
</div>
</div>
<ul class="phb_ul">
<li>
<div class="ph_title">
<span>新歌榜</span>
<img src="./img/item.png" alt="">
</div>
<div class="ph_list">
<div class="list_l">
<span class="num">01</span>
<img src="http://qukufile2.qianqian.com/data2/pic/8b1aab6be81f10639c01c1401a20463c/675021896/675021896.jpg@s_2,w_60,h_60"
alt="">
<div>
<p>少年(童声版)</p>
<span>宋小睿</span>
</div>
</div>
<div class="list_r">
<i class="iconfont icon-play3"></i>
<i class="iconfont icon-tubiaozhizuomoban-"></i>
<i class="iconfont icon-LC_icon_download_line_2"></i>
</div>
</div>
<div class="ph_list">
<div class="list_l">
<span class="num">01</span>
<img src="http://qukufile2.qianqian.com/data2/pic/8b1aab6be81f10639c01c1401a20463c/675021896/675021896.jpg@s_2,w_60,h_60"
alt="">
<div>
<p>少年(童声版)</p>
<span>宋小睿</span>
</div>
</div>
<div class="list_r">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
</div>
</div>
<div class="ph_list">
<div class="list_l">
<span class="num">01</span>
<img src="http://qukufile2.qianqian.com/data2/pic/8b1aab6be81f10639c01c1401a20463c/675021896/675021896.jpg@s_2,w_60,h_60"
alt="">
<div>
<p>少年(童声版)</p>
<span>宋小睿</span>
</div>
</div>
<div class="list_r">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
</div>
</div>
<div class="ph_list">
<div class="list_l">
<span class="num">01</span>
<img src="http://qukufile2.qianqian.com/data2/pic/8b1aab6be81f10639c01c1401a20463c/675021896/675021896.jpg@s_2,w_60,h_60"
alt="">
<div>
<p>少年(童声版)</p>
<span>宋小睿</span>
</div>
</div>
<div class="list_r">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
</div>
</div>
<div class="ph_list">
<div class="list_l">
<span class="num">01</span>
<img src="http://qukufile2.qianqian.com/data2/pic/8b1aab6be81f10639c01c1401a20463c/675021896/675021896.jpg@s_2,w_60,h_60"
alt="">
<div>
<p>少年(童声版)</p>
<span>宋小睿</span>
</div>
</div>
<div class="list_r">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
</div>
</div>
<div class="ph_list">
<div class="list_l">
<span class="num">01</span>
<img src="http://qukufile2.qianqian.com/data2/pic/8b1aab6be81f10639c01c1401a20463c/675021896/675021896.jpg@s_2,w_60,h_60"
alt="">
<div>
<p>少年(童声版)</p>
<span>宋小睿</span>
</div>
</div>
<div class="list_r">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
</div>
</div>
</li>
<li>
<div class="ph_title">
<span>新歌榜</span>
<img src="./img/item.png" alt="">
</div>
<div class="ph_list">
<div class="list_l">
<span class="num">01</span>
<img src="http://qukufile2.qianqian.com/data2/pic/8b1aab6be81f10639c01c1401a20463c/675021896/675021896.jpg@s_2,w_60,h_60"
alt="">
<div>
<p>少年(童声版)</p>
<span>宋小睿</span>
</div>
</div>
<div class="list_r">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
</div>
</div>
<div class="ph_list">
<div class="list_l">
<span class="num">01</span>
<img src="http://qukufile2.qianqian.com/data2/pic/8b1aab6be81f10639c01c1401a20463c/675021896/675021896.jpg@s_2,w_60,h_60"
alt="">
<div>
<p>少年(童声版)</p>
<span>宋小睿</span>
</div>
</div>
<div class="list_r">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
</div>
</div>
<div class="ph_list">
<div class="list_l">
<span class="num">01</span>
<img src="http://qukufile2.qianqian.com/data2/pic/8b1aab6be81f10639c01c1401a20463c/675021896/675021896.jpg@s_2,w_60,h_60"
alt="">
<div>
<p>少年(童声版)</p>
<span>宋小睿</span>
</div>
</div>
<div class="list_r">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
</div>
</div>
<div class="ph_list">
<div class="list_l">
<span class="num">01</span>
<img src="http://qukufile2.qianqian.com/data2/pic/8b1aab6be81f10639c01c1401a20463c/675021896/675021896.jpg@s_2,w_60,h_60"
alt="">
<div>
<p>少年(童声版)</p>
<span>宋小睿</span>
</div>
</div>
<div class="list_r">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
</div>
</div>
<div class="ph_list">
<div class="list_l">
<span class="num">01</span>
<img src="http://qukufile2.qianqian.com/data2/pic/8b1aab6be81f10639c01c1401a20463c/675021896/675021896.jpg@s_2,w_60,h_60"
alt="">
<div>
<p>少年(童声版)</p>
<span>宋小睿</span>
</div>
</div>
<div class="list_r">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
</div>
</div>
<div class="ph_list">
<div class="list_l">
<span class="num">01</span>
<img src="http://qukufile2.qianqian.com/data2/pic/8b1aab6be81f10639c01c1401a20463c/675021896/675021896.jpg@s_2,w_60,h_60"
alt="">
<div>
<p>少年(童声版)</p>
<span>宋小睿</span>
</div>
</div>
<div class="list_r">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
</div>
</div>
</li>
<li>
<div class="ph_title">
<span>新歌榜</span>
<img src="./img/item.png" alt="">
</div>
<div class="ph_list">
<div class="list_l">
<span class="num">01</span>
<img src="http://qukufile2.qianqian.com/data2/pic/8b1aab6be81f10639c01c1401a20463c/675021896/675021896.jpg@s_2,w_60,h_60"
alt="">
<div>
<p>少年(童声版)</p>
<span>宋小睿</span>
</div>
</div>
<div class="list_r">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
</div>
</div>
<div class="ph_list">
<div class="list_l">
<span class="num">01</span>
<img src="http://qukufile2.qianqian.com/data2/pic/8b1aab6be81f10639c01c1401a20463c/675021896/675021896.jpg@s_2,w_60,h_60"
alt="">
<div>
<p>少年(童声版)</p>
<span>宋小睿</span>
</div>
</div>
<div class="list_r">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
</div>
</div>
<div class="ph_list">
<div class="list_l">
<span class="num">01</span>
<img src="http://qukufile2.qianqian.com/data2/pic/8b1aab6be81f10639c01c1401a20463c/675021896/675021896.jpg@s_2,w_60,h_60"
alt="">
<div>
<p>少年(童声版)</p>
<span>宋小睿</span>
</div>
</div>
<div class="list_r">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
</div>
</div>
<div class="ph_list">
<div class="list_l">
<span class="num">01</span>
<img src="http://qukufile2.qianqian.com/data2/pic/8b1aab6be81f10639c01c1401a20463c/675021896/675021896.jpg@s_2,w_60,h_60"
alt="">
<div>
<p>少年(童声版)</p>
<span>宋小睿</span>
</div>
</div>
<div class="list_r">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
</div>
</div>
<div class="ph_list">
<div class="list_l">
<span class="num">01</span>
<img src="http://qukufile2.qianqian.com/data2/pic/8b1aab6be81f10639c01c1401a20463c/675021896/675021896.jpg@s_2,w_60,h_60"
alt="">
<div>
<p>少年(童声版)</p>
<span>宋小睿</span>
</div>
</div>
<div class="list_r">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
</div>
</div>
<div class="ph_list">
<div class="list_l">
<span class="num">01</span>
<img src="http://qukufile2.qianqian.com/data2/pic/8b1aab6be81f10639c01c1401a20463c/675021896/675021896.jpg@s_2,w_60,h_60"
alt="">
<div>
<p>少年(童声版)</p>
<span>宋小睿</span>
</div>
</div>
<div class="list_r">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
<img src="./img/item.png" alt="">
</div>
</div>
</li>
</ul>
</div>
</div>
</div>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

View File

@@ -0,0 +1,40 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
body {
margin: 0;
padding: 0;
}
.box {
width: 200px;
height: 200px;
position: relative;
background: red;
overflow: hidden;
}
.box:hover .box_tas {
bottom: 0;
}
.box_tas {
width: 200px;
height: 50px;
background: blue;
position: absolute;
bottom: -50px;
transition: all ease 0.6s 0s;
}
</style>
</head>
<body>
<div class="box">
<div class="box_tas"></div>
</div>
</body>
</html>

View File

@@ -0,0 +1,16 @@
/* 专门用来重置浏览器默认样式的 */
body, p,ul,li,h1,h2,h3,h4,h5,h6,input{
margin: 0;
padding: 0;
}
input {
outline: none;
}
li {
list-style: none;
}
a {
text-decoration: none;
}

View File

@@ -0,0 +1,111 @@
.header {
width: 100%;
position: fixed;
left: 0;
top: 0;
height: 56px;
background: #fff;
z-index: 9999;
box-shadow: 0 2px 10px rgba(0,0,0,.05);
}
.center {
width: 1440px;
margin: 0 auto;
}
.center_logo {
padding-top: 12px;
}
.center_logo img {
width: 60px;
height: 30px;
}
.center_menu {
margin-left: 204px;
}
.center_menu ul li {
line-height: 56px;
height: 56px;
padding: 0 20px;
}
.center_menu ul li a {
font-size: 17px;
color: #333;
}
.center_menu ul li input[type="text"] {
width: 160px;
height: 36px;
border: none;
padding: 8px 36px 8px 16px;
box-sizing: border-box;
border-radius: 18px;
background: #f2f2f2 url("../img/search.png");
background-repeat: no-repeat;
background-size: 21px 21px;
background-position: 124px center;
transition: all ease 1s;
}
.center_menu ul li input[type="text"]:focus {
width: 300px;
background-position: 264px center;
}
.center_login {}
.center_login ul li:first-child img{
padding-top: 17px;
width: 24px;
height: 24px;
margin-right: 12px;
}
.center_login ul li:nth-child(2) img{
padding-top: 18px;
width: 56px;
height: 24px;
margin-right: 10px;
}
.center_login ul li:nth-child(3) a{
padding: 0 16px;
color: #969696;
}
.center_login ul li:nth-child(4) a{
width: 82px;
height: 40px;
border-radius: 50px;
background-color: #fff;
font-size: 16px;
color: #ec7259;
margin-right: 8px;
border: 1px solid #ec7259;
text-align: center;
line-height: 40px;
display: block;
box-sizing: border-box;
margin-top: 7px;
}
.center_login ul li:nth-child(5) img {
width: 16px;
height: 16px;
vertical-align: middle;
}
.center_login ul li:nth-child(5) a{
width: 108px;
height: 40px;
border-radius: 50px;
background-color: #ec7259;
font-size: 16px;
color: #fff;
margin-right: 8px;
text-align: center;
line-height: 40px;
display: block;
margin-top: 7px;
}
.center_login ul li {
height: 56px;
line-height: 56px;
}
.center_login ul li,
.center_menu ul li {
float: left;
}

View File

@@ -0,0 +1,12 @@
/* 存放公共css的 */
.theme_red {
color: blue;
}
.left {
float: left;
}
.right {
float: right;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

View File

@@ -0,0 +1 @@
<svg class="wCYvWN" style="width:60px;height:30px" width="60" height="30" focusable="false" aria-hidden="true" viewBox="0 0 106 50" version="1.1"><g><path d="M79.6542664,49.2735656 L75.6602511,49.6932377 L75.6602511,27.3313525 L59.1137321,27.3313525 C58.6314725,27.3313525 57.9655336,26.8821721 57.8498237,26.1776639 L57.5346557,23.1870902 L75.6602511,23.1887295 L75.6602511,12.1260246 L62.1759992,12.1260246 C61.6180832,12.0858607 61.0229458,11.7788934 60.8894344,10.9870902 L60.5819534,7.93790984 L75.6602511,7.93790984 L75.6602511,0.409631148 L81.2074496,0.409631148 L81.2074496,7.93790984 L97.4727855,7.93790984 L97.4727855,23.1887295 L103.836831,23.1887295 L103.836831,38.1235656 C103.836831,42.2026639 100.70174,44.4715164 97.7187702,44.4715164 L92.357274,44.4715164 C91.6217473,44.4715164 91.0290374,43.9440574 90.9659229,43.3719262 L90.6681519,40.5223361 L92.1274725,40.5223361 L95.7933733,40.5223361 C97.0864115,40.5223361 98.3321137,39.6739754 98.3321137,38.1235656 L98.3321137,27.3313525 L81.2074496,27.3313525 L81.2074496,47.4452869 C81.2074496,48.5985656 80.4148771,49.1264344 79.6542664,49.2735656 L79.6542664,49.2735656 Z M81.260045,22.917418 L91.9745412,22.917418 L91.9745412,12.0514344 L81.260045,12.0514344 L81.260045,22.917418 Z M104.57519,13.9920082 L100.167289,13.9920082 C99.5871214,9.9170082 97.5274038,5.26987705 95.0355947,1.96209016 L100.167289,1.96209016 C102.583037,4.95553279 104.693327,8.85922131 105.720556,12.5608607 C105.867015,13.1711066 105.472144,13.9920082 104.57519,13.9920082 L104.57519,13.9920082 Z"></path><path d="M4.98236412,12.0515574 L9.99834885,12.0515574 C11.3953641,13.8056557 12.3169977,15.077377 13.7310053,18.5515574 C13.8337687,18.8339344 13.9130664,20.2007377 12.5900893,20.2007377 L8.57624962,20.2007377 C7.43047863,15.8630328 6.43521145,14.337623 4.97831832,12.0540164 C3.51980687,13.0105738 1.86507405,13.8138525 -4.04580153e-05,14.3802459 L-4.04580153e-05,10.3880328 C2.35987557,9.24172131 4.08662366,7.6892623 5.34608168,5.85278689 C6.43399771,4.2654918 7.18206641,2.47901639 7.58300534,0.409754098 L11.8043947,0.409754098 C12.772555,0.409754098 13.2313489,1.06877049 13.0962191,1.56139344 C12.9129443,2.1392623 12.5342573,2.99377049 12.1640664,3.78270492 L25.2676084,3.78270492 L25.0038221,6.30278689 C24.9370664,6.85483607 24.5227763,7.57532787 23.6181351,7.57532787 L17.5377,7.57532787 C18.2930511,9.24336066 18.7571046,10.7601639 18.9112496,11.3568852 C19.0508298,11.9036066 18.7004634,12.7810656 17.765074,12.7810656 L13.9850817,12.7810656 C13.7127992,10.9581148 13.4073412,9.70811475 12.633784,7.57532787 L9.82963893,7.57532787 C8.54266947,9.20852459 6.93891374,10.7679508 4.98236412,12.0515574 L4.98236412,12.0515574 Z M14.1651198,43.4847541 L14.1651198,22.1413115 L34.8367382,22.1413115 L34.8367382,36.8896721 C34.9253412,41.1093443 31.729158,43.4847541 28.4929214,43.4847541 L14.1651198,43.4847541 Z M35.3776618,49.3056557 C34.6793565,49.3056557 34.1008069,48.7921311 34.0028985,48.0851639 L33.669929,45.2757377 L38.4682496,45.2372131 C39.5310817,45.2372131 40.5696389,44.5277869 40.5696389,42.9769672 L40.5696389,18.4761475 L16.1390664,18.4761475 C15.6288908,18.4761475 15.0078603,18.2769672 14.819326,17.2298361 L14.5478527,14.3802459 L45.940845,14.3802459 L45.940845,43.4048361 C45.940845,45.4257377 44.1275168,49.2339344 39.6552878,49.3056557 L35.3776618,49.3056557 Z M6.84505115,49.2904918 L3.0626313,49.6933607 L3.0626313,20.2007377 L8.42250916,20.2007377 L8.42250916,47.3646721 C8.42250916,48.0146721 8.09399008,49.0794262 6.84505115,49.2904918 L6.84505115,49.2904918 Z M41.1040893,12.617541 L37.1335397,12.617541 C36.8025931,10.8986885 36.5436618,9.44581967 35.7462344,7.47942623 L32.2174863,7.47942623 C31.3132496,8.52245902 30.2645779,9.69581967 28.8404557,10.8204098 C27.3799214,11.9736885 25.5018603,13.1154918 22.9704023,13.9917213 L22.9704023,9.96672131 C27.0331962,7.6904918 29.0237305,4.6007377 29.9906771,0.409754098 L34.2080206,0.409754098 C35.3258756,0.409754098 35.6547992,1.21385246 35.5848069,1.4892623 C35.3121198,2.35811475 34.9075397,2.9892623 34.6032954,3.70360656 L48.620784,3.70360656 L48.3602344,6.23434426 C48.2724405,6.99745902 47.669616,7.47942623 47.0243107,7.47942623 L40.7173107,7.47942623 C41.4892496,9.14459016 41.945616,10.3318852 42.1398145,11.2503279 C42.223158,11.6478689 41.9775779,12.5761475 41.1040893,12.617541 L41.1040893,12.617541 Z M19.1422649,39.6040164 L27.579784,39.6040164 C29.230471,39.6040164 29.861616,38.5290164 29.861616,37.3347541 L29.861616,34.5634426 L19.1693718,34.5589344 L19.1422649,39.6040164 Z M19.1422649,30.6786066 L29.8620206,30.6786066 L29.8620206,26.0220492 L19.1422649,26.0220492 L19.1422649,30.6786066 Z"></path></g></svg>

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

View File

@@ -0,0 +1,71 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="./css/clear.css">
<link rel="stylesheet" href="./css/public.css">
<link rel="stylesheet" href="http://at.alicdn.com/t/font_1975352_0bxvaauyh155.css">
<link rel="stylesheet" href="./css/index.css">
<title>深度的5年</title>
</head>
<body>
<div class="header">
<div class="center">
<div class="center_logo left">
<img src="./img/logo.png" alt="">
</div>
<div class="center_menu left">
<ul>
<li>
<a href="">首页</a>
</li>
<li>
<a href="">下载App</a>
</li>
<li>
<!-- <i class="iconfont icon-cart"></i> -->
<input type="text" placeholder="搜索">
</li>
</ul>
</div>
<div class="center_login right">
<ul>
<li>
<img src="./img/font.png" alt="">
</li>
<li>
<img src="./img/beta.png" alt="">
</li>
<li>
<a href="">登录</a>
</li>
<li>
<a href="">注册</a>
</li>
<li>
<a href="">
<img src="./img/font.png" alt="">
<span>写文章</span>
</a>
</li>
</ul>
</div>
</div>
</div>
<div class="content">
<div class="content_left"></div>
<div class="content_right"></div>
</div>
<div class="footer">
<div class="footer_center"></div>
</div>
</body>
</html>

View File

@@ -0,0 +1,3 @@
> 1%
last 2 versions
not dead

View File

@@ -0,0 +1,23 @@
.DS_Store
node_modules
/dist
# local env files
.env.local
.env.*.local
# Log files
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
# Editor directories and files
.idea
.vscode
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?

View File

@@ -0,0 +1,19 @@
# ddd
## Project setup
```
npm install
```
### Compiles and hot-reloads for development
```
npm run serve
```
### Compiles and minifies for production
```
npm run build
```
### Customize configuration
See [Configuration Reference](https://cli.vuejs.org/config/).

View File

@@ -0,0 +1,5 @@
module.exports = {
presets: [
'@vue/cli-plugin-babel/preset'
]
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,32 @@
{
"name": "ddd",
"version": "0.1.0",
"private": true,
"scripts": {
"start": "vue-cli-service serve --mode development",
"build": "vue-cli-service build --mode production"
},
"dependencies": {
"axios": "^0.20.0",
"core-js": "^3.6.5",
"lib-flexible": "^0.3.2",
"vant": "^2.10.6",
"videojs-contrib-hls": "^5.15.0",
"vue": "^2.6.11",
"vue-router": "^3.2.0",
"vue-video-player": "^5.0.2",
"vuex": "^3.4.0"
},
"devDependencies": {
"@vue/cli-plugin-babel": "~4.5.0",
"@vue/cli-plugin-router": "~4.5.0",
"@vue/cli-plugin-vuex": "~4.5.0",
"@vue/cli-service": "~4.5.0",
"less": "^3.0.4",
"less-loader": "^5.0.0",
"postcss-pxtorem": "^5.1.1",
"pug-html-loader": "^1.1.5",
"pug-plain-loader": "^1.0.0",
"vue-template-compiler": "^2.6.11"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 652 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 97 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 153 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@@ -0,0 +1,17 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<link rel="icon" href="<%= BASE_URL %>favicon.ico">
<title><%= htmlWebpackPlugin.options.title %></title>
</head>
<body>
<noscript>
<strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>
</noscript>
<div id="app"></div>
<!-- built files will be auto injected -->
</body>
</html>

View File

@@ -0,0 +1,36 @@
<template lang="pug">
#app
router-view
</template>
<script>
export default {
data () {
return {
}
},
created(){
},
methods: {
},
components: {
}
}
</script>
<style lang="less">
@import "~@less/utils/normalize.less";
.content {
img {
width: 100%;
}
span {
font-size: 15px;
line-height: 25px;
}
}
</style>

View File

@@ -0,0 +1,304 @@
@red50: #ffebee;
@red100: #ffcdd2;
@red200: #ef9a9a;
@red300: #e57373;
@red400: #ef5350;
@red500: #f44336;
@red600: #e53935;
@red700: #d32f2f;
@red800: #c62828;
@red900: #b71c1c;
@redA100: #ff8a80;
@redA200: #ff5252;
@redA400: #ff1744;
@redA700: #d50000;
@red: @red500;
@pink50: #fce4ec;
@pink100: #f8bbd0;
@pink200: #f48fb1;
@pink300: #f06292;
@pink400: #ec407a;
@pink500: #e91e63;
@pink600: #d81b60;
@pink700: #c2185b;
@pink800: #ad1457;
@pink900: #880e4f;
@pinkA100: #ff80ab;
@pinkA200: #ff4081;
@pinkA400: #f50057;
@pinkA700: #c51162;
@pink: @pink500;
@purple50: #f3e5f5;
@purple100: #e1bee7;
@purple200: #ce93d8;
@purple300: #ba68c8;
@purple400: #ab47bc;
@purple500: #9c27b0;
@purple600: #8e24aa;
@purple700: #7b1fa2;
@purple800: #6a1b9a;
@purple900: #4a148c;
@purpleA100: #ea80fc;
@purpleA200: #e040fb;
@purpleA400: #d500f9;
@purpleA700: #aa00ff;
@purple: @purple500;
@deepPurple50: #ede7f6;
@deepPurple100: #d1c4e9;
@deepPurple200: #b39ddb;
@deepPurple300: #9575cd;
@deepPurple400: #7e57c2;
@deepPurple500: #673ab7;
@deepPurple600: #5e35b1;
@deepPurple700: #512da8;
@deepPurple800: #4527a0;
@deepPurple900: #311b92;
@deepPurpleA100: #b388ff;
@deepPurpleA200: #7c4dff;
@deepPurpleA400: #651fff;
@deepPurpleA700: #6200ea;
@deepPurple: @deepPurple500;
@indigo50: #e8eaf6;
@indigo100: #c5cae9;
@indigo200: #9fa8da;
@indigo300: #7986cb;
@indigo400: #5c6bc0;
@indigo500: #3f51b5;
@indigo600: #3949ab;
@indigo700: #303f9f;
@indigo800: #283593;
@indigo900: #1a237e;
@indigoA100: #8c9eff;
@indigoA200: #536dfe;
@indigoA400: #3d5afe;
@indigoA700: #304ffe;
@indigo: @indigo500;
@blue50: #e3f2fd;
@blue100: #bbdefb;
@blue200: #90caf9;
@blue300: #64b5f6;
@blue400: #42a5f5;
@blue500: #2196f3;
@blue600: #1e88e5;
@blue700: #1976d2;
@blue800: #1565c0;
@blue900: #0d47a1;
@blueA100: #82b1ff;
@blueA200: #448aff;
@blueA400: #2979ff;
@blueA700: #2962ff;
@blue: @blue500;
@lightBlue50: #e1f5fe;
@lightBlue100: #b3e5fc;
@lightBlue200: #81d4fa;
@lightBlue300: #4fc3f7;
@lightBlue400: #29b6f6;
@lightBlue500: #03a9f4;
@lightBlue600: #039be5;
@lightBlue700: #0288d1;
@lightBlue800: #0277bd;
@lightBlue900: #01579b;
@lightBlueA100: #80d8ff;
@lightBlueA200: #40c4ff;
@lightBlueA400: #00b0ff;
@lightBlueA700: #0091ea;
@lightBlue: @lightBlue500;
@cyan50: #e0f7fa;
@cyan100: #b2ebf2;
@cyan200: #80deea;
@cyan300: #4dd0e1;
@cyan400: #26c6da;
@cyan500: #00bcd4;
@cyan600: #00acc1;
@cyan700: #0097a7;
@cyan800: #00838f;
@cyan900: #006064;
@cyanA100: #84ffff;
@cyanA200: #18ffff;
@cyanA400: #00e5ff;
@cyanA700: #00b8d4;
@cyan: @cyan500;
@teal50: #e0f2f1;
@teal100: #b2dfdb;
@teal200: #80cbc4;
@teal300: #4db6ac;
@teal400: #26a69a;
@teal500: #009688;
@teal600: #00897b;
@teal700: #00796b;
@teal800: #00695c;
@teal900: #004d40;
@tealA100: #a7ffeb;
@tealA200: #64ffda;
@tealA400: #1de9b6;
@tealA700: #00bfa5;
@teal: @teal500;
@green50: #e8f5e9;
@green100: #c8e6c9;
@green200: #a5d6a7;
@green300: #81c784;
@green400: #66bb6a;
@green500: #4caf50;
@green600: #43a047;
@green700: #388e3c;
@green800: #2e7d32;
@green900: #1b5e20;
@greenA100: #b9f6ca;
@greenA200: #69f0ae;
@greenA400: #00e676;
@greenA700: #00c853;
@green: @green500;
@lightGreen50: #f1f8e9;
@lightGreen100: #dcedc8;
@lightGreen200: #c5e1a5;
@lightGreen300: #aed581;
@lightGreen400: #9ccc65;
@lightGreen500: #8bc34a;
@lightGreen600: #7cb342;
@lightGreen700: #689f38;
@lightGreen800: #558b2f;
@lightGreen900: #33691e;
@lightGreenA100: #ccff90;
@lightGreenA200: #b2ff59;
@lightGreenA400: #76ff03;
@lightGreenA700: #64dd17;
@lightGreen: @lightGreen500;
@lime50: #f9fbe7;
@lime100: #f0f4c3;
@lime200: #e6ee9c;
@lime300: #dce775;
@lime400: #d4e157;
@lime500: #cddc39;
@lime600: #c0ca33;
@lime700: #afb42b;
@lime800: #9e9d24;
@lime900: #827717;
@limeA100: #f4ff81;
@limeA200: #eeff41;
@limeA400: #c6ff00;
@limeA700: #aeea00;
@lime: @lime500;
@yellow50: #fffde7;
@yellow100: #fff9c4;
@yellow200: #fff59d;
@yellow300: #fff176;
@yellow400: #ffee58;
@yellow500: #ffeb3b;
@yellow600: #fdd835;
@yellow700: #fbc02d;
@yellow800: #f9a825;
@yellow900: #f57f17;
@yellowA100: #ffff8d;
@yellowA200: #ffff00;
@yellowA400: #ffea00;
@yellowA700: #ffd600;
@yellow: @yellow500;
@amber50: #fff8e1;
@amber100: #ffecb3;
@amber200: #ffe082;
@amber300: #ffd54f;
@amber400: #ffca28;
@amber500: #ffc107;
@amber600: #ffb300;
@amber700: #ffa000;
@amber800: #ff8f00;
@amber900: #ff6f00;
@amberA100: #ffe57f;
@amberA200: #ffd740;
@amberA400: #ffc400;
@amberA700: #ffab00;
@amber: @amber500;
@orange50: #fff3e0;
@orange100: #ffe0b2;
@orange200: #ffcc80;
@orange300: #ffb74d;
@orange400: #ffa726;
@orange500: #ff9800;
@orange600: #fb8c00;
@orange700: #f57c00;
@orange800: #ef6c00;
@orange900: #e65100;
@orangeA100: #ffd180;
@orangeA200: #ffab40;
@orangeA400: #ff9100;
@orangeA700: #ff6d00;
@orange: @orange500;
@deepOrange50: #fbe9e7;
@deepOrange100: #ffccbc;
@deepOrange200: #ffab91;
@deepOrange300: #ff8a65;
@deepOrange400: #ff7043;
@deepOrange500: #ff5722;
@deepOrange600: #f4511e;
@deepOrange700: #e64a19;
@deepOrange800: #d84315;
@deepOrange900: #bf360c;
@deepOrangeA100: #ff9e80;
@deepOrangeA200: #ff6e40;
@deepOrangeA400: #ff3d00;
@deepOrangeA700: #dd2c00;
@deepOrange: @deepOrange500;
@brown50: #efebe9;
@brown100: #d7ccc8;
@brown200: #bcaaa4;
@brown300: #a1887f;
@brown400: #8d6e63;
@brown500: #795548;
@brown600: #6d4c41;
@brown700: #5d4037;
@brown800: #4e342e;
@brown900: #3e2723;
@brown: @brown500;
@blueGrey50: #eceff1;
@blueGrey100: #cfd8dc;
@blueGrey200: #b0bec5;
@blueGrey300: #90a4ae;
@blueGrey400: #78909c;
@blueGrey500: #607d8b;
@blueGrey600: #546e7a;
@blueGrey700: #455a64;
@blueGrey800: #37474f;
@blueGrey900: #263238;
@blueGrey: @blueGrey500;
@grey50: #fafafa;
@grey100: #f5f5f5;
@grey200: #eeeeee;
@grey300: #e0e0e0;
@grey400: #bdbdbd;
@grey500: #9e9e9e;
@grey600: #757575;
@grey700: #616161;
@grey800: #424242;
@grey900: #212121;
@grey: @grey500;
@black: #000000;
@white: #ffffff;
@transparent: rgba(0, 0, 0, 0);
@fullBlack: rgba(0, 0, 0, 1);
@darkBlack: rgba(0, 0, 0, 0.87);
@lightBlack: rgba(0, 0, 0, 0.54);
@minBlack: rgba(0, 0, 0, 0.26);
@faintBlack: rgba(0, 0, 0, 0.12);
@fullWhite: rgba(255, 255, 255, 1);
@darkWhite: rgba(255, 255, 255, 0.87);
@lightWhite: rgba(255, 255, 255, 0.54);

View File

@@ -0,0 +1,43 @@
@import "./index.less";
@fontFamily: Roboto, Lato, sans-serif;
// primary and accent
@primaryColor: @blue; // 主色
@secondaryColor: @pinkA200;
@successColor: @green;
@warningColor: @yellow600;
@errorColor: @red;
@infoColor: @blue;
@trackColor: @grey400;
// textColor or borderColor
@textColor: @darkBlack;
@secondaryTextColor: fade(@fullBlack, 54%);
@alternateTextColor: @white;
@borderColor: fade(@fullBlack, 12%);
@disabledColor: fade(@fullBlack, 38%);
// background
@backgroundColor: @grey50;
@dialogBackgroundColor: @white; // dialogs or cards
@chipBackgroundColor: @grey300;
// icon color
@activeIconColor: fade(@fullBlack, 54%);
@inActiveIconColor: fade(@fullBlack, 38%);
// spaceing
@iconSize: 24px;
@desktopGutter: 24px;
@desktopGutterMore: 32px;
@desktopGutterLess: 16px;
@desktopGutterMini: 8px;
@desktopKeylineIncrement: 64px;
@desktopDropDownMenuItemHeight: 32px;
@desktopDropDownMenuFontSize: 15px;
@desktopDrawerMenuItemHeight: 48px;
@desktopSubheaderHeight: 48px;
@desktopToolbarHeight: 56px;
// animate
@easeOutFunction: cubic-bezier(0.23, 1, 0.32, 1);
@easeInOutFunction: cubic-bezier(0.445, 0.05, 0.55, 0.95);

View File

@@ -0,0 +1,4 @@
@import "../color/var.less";
h2 {
color: @successColor;
}

View File

@@ -0,0 +1,43 @@
@import "../color/var.less";
@import "../utils/mixins";
.Radio {
.title {
font-size: 0.48rem;
color: #000000;
margin-top: 1.347rem;
margin-bottom: 0.84rem;
text-align: center;
}
.default_frontcover {
width: 7.467rem;
height: 7.467rem;
.imgCenter();
}
.process {
width: 7.467rem;
height: 1.2rem;
.imgCenter();
margin-top: 0.667rem;
}
.action {
display: flex;
justify-content: space-between;
margin: 0 auto;
width: 7.467rem;
align-items: center;
margin-top: 0.733rem;
.refresh {
width: 0.52rem;
height: 0.52rem;
}
.play {
width: 1.6rem;
height: 1.6rem;
}
.list {
width: 0.587rem;
height: 0.52rem;
}
}
}

View File

@@ -0,0 +1,315 @@
.imgCenter {
display: block;
margin: 0 auto;
}
.transition(@d) {
-webkit-transition-duration: @d;
transition-duration: @d;
}
.delay(@d) {
-webkit-transition-delay: @d;
transition-delay: @d;
}
.transform(@t) {
-webkit-transform: @t;
transform: @t;
}
.transform-origin(@to) {
-webkit-transform-origin: @to;
transform-origin: @to;
}
.translate3d(@x:0, @y:0, @z:0) {
-webkit-transform: translate3d(@x,@y,@z);
transform: translate3d(@x,@y,@z);
}
.animation (@a) {
-webkit-animation: @a;
animation: @a;
}
.scrollable() {
overflow: auto;
-webkit-overflow-scrolling: touch;
}
.flex-shrink(@fs) {
-webkit-box-flex: @fs;
-webkit-flex-shrink: @fs;
-ms-flex: 0 @fs auto;
flex-shrink: @fs;
}
.clearfix() {
&:after,
&:before {
content: " ";
display: table;
}
&:after {
clear: both;
}
}
.hairline(@position, @color) when (@position = top) {
&:before {
content: '';
position: absolute;
left: 0;
top: 0;
bottom: auto;
right: auto;
height: 1px;
width: 100%;
background-color: @color;
display: block;
z-index: 15;
// .transform-origin(50% 0%);
html.pixel-ratio-2 & {
.transform(scaleY(0.5));
}
html.pixel-ratio-3 & {
.transform(scaleY(0.33));
}
}
}
.hairline(@position, @color) when (@position = left) {
&:before {
content: '';
position: absolute;
left: 0;
top: 0;
bottom: auto;
right: auto;
width: 1px;
height: 100%;
background-color: @color;
display: block;
z-index: 15;
// .transform-origin(0% 50%);
html.pixel-ratio-2 & {
.transform(scaleX(0.5));
}
html.pixel-ratio-3 & {
.transform(scaleX(0.33));
}
}
}
.hairline(@position, @color) when (@position = bottom) {
&:after {
content: '';
position: absolute;
left: 0;
bottom: 0;
right: auto;
top: auto;
height: 1px;
width: 100%;
background-color: @color;
display: block;
z-index: 15;
html.pixel-ratio-2 & {
.transform(scaleY(0.5));
}
html.pixel-ratio-3 & {
.transform(scaleY(0.33));
}
}
}
.hairline(@position, @color) when (@position = right) {
&:after {
content: '';
position: absolute;
right: 0;
top: 0;
left: auto;
bottom: auto;
width: 1px;
height: 100%;
background-color: @color;
display: block;
z-index: 15;
// .transform-origin(100% 50%);
html.pixel-ratio-2 & {
.transform(scaleX(0.5));
}
html.pixel-ratio-3 & {
.transform(scaleX(0.33));
}
}
}
// For right and bottom
.hairline-remove(@position) when not (@position = left) and not (@position = top) {
&:after {
display: none;
}
}
// For left and top
.hairline-remove(@position) when not (@position = right) and not (@position = bottom) {
&:before {
display: none;
}
}
// For right and bottom
.hairline-color(@position, @color) when not (@position = left) and not (@position = top) {
&:after {
background-color: @color;
}
}
// For left and top
.hairline-color(@position, @color) when not (@position = right) and not (@position = bottom) {
&:before {
background-color: @color;
}
}
// Encoded SVG Background
.encoded-svg-background(@svg) {
@url: `encodeURIComponent(@{svg})`;
background-image: url("data:image/svg+xml;charset=utf-8,@{url}");
}
// Preserve3D
.preserve3d() {
-webkit-transform-style: preserve-3d;
-moz-transform-style: preserve-3d;
-ms-transform-style: preserve-3d;
transform-style: preserve-3d;
}
// Shadow
.depth(@level:1) {
& when (@level = 0) {
box-shadow: none;
}
& when (@level = 1) {
box-shadow: 0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12);
}
& when (@level = 2) {
box-shadow: 0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);
}
& when (@level = 3) {
box-shadow: 0 3px 3px -2px rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 1px 8px 0 rgba(0,0,0,.12);
}
& when (@level = 4) {
box-shadow: 0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12);
}
& when (@level = 5) {
box-shadow: 0 3px 5px -1px rgba(0,0,0,.2),0 5px 8px 0 rgba(0,0,0,.14),0 1px 14px 0 rgba(0,0,0,.12);
}
& when (@level = 6) {
box-shadow: 0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12);
}
& when (@level = 7) {
box-shadow: 0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12);
}
& when (@level = 8) {
box-shadow: 0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);
}
& when (@level = 9) {
box-shadow: 0 5px 6px -3px rgba(0,0,0,.2),0 9px 12px 1px rgba(0,0,0,.14),0 3px 16px 2px rgba(0,0,0,.12);
}
& when (@level = 10) {
box-shadow: 0 6px 6px -3px rgba(0,0,0,.2),0 10px 14px 1px rgba(0,0,0,.14),0 4px 18px 3px rgba(0,0,0,.12);
}
& when (@level = 11) {
box-shadow: 0 6px 7px -4px rgba(0,0,0,.2),0 11px 15px 1px rgba(0,0,0,.14),0 4px 20px 3px rgba(0,0,0,.12);
}
& when (@level = 12) {
box-shadow: 0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12);
}
& when (@level = 13) {
box-shadow: 0 7px 8px -4px rgba(0,0,0,.2),0 13px 19px 2px rgba(0,0,0,.14),0 5px 24px 4px rgba(0,0,0,.12);
}
& when (@level = 14) {
box-shadow: 0 7px 9px -4px rgba(0,0,0,.2),0 14px 21px 2px rgba(0,0,0,.14),0 5px 26px 4px rgba(0,0,0,.12);
}
& when (@level = 15) {
box-shadow: 0 8px 9px -5px rgba(0,0,0,.2),0 15px 22px 2px rgba(0,0,0,.14),0 6px 28px 5px rgba(0,0,0,.12);
}
& when (@level = 16) {
box-shadow: 0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12);
}
& when (@level = 17) {
box-shadow: 0 8px 11px -5px rgba(0,0,0,.2),0 17px 26px 2px rgba(0,0,0,.14),0 6px 32px 5px rgba(0,0,0,.12);
}
& when (@level = 18) {
box-shadow: 0 9px 11px -5px rgba(0,0,0,.2),0 18px 28px 2px rgba(0,0,0,.14),0 7px 34px 6px rgba(0,0,0,.12);
}
& when (@level = 19) {
box-shadow: 0 9px 12px -6px rgba(0,0,0,.2),0 19px 29px 2px rgba(0,0,0,.14),0 7px 36px 6px rgba(0,0,0,.12);
}
& when (@level = 20) {
box-shadow: 0 10px 13px -6px rgba(0,0,0,.2),0 20px 31px 3px rgba(0,0,0,.14),0 8px 38px 7px rgba(0,0,0,.12);
}
& when (@level = 21) {
box-shadow: 0 10px 13px -6px rgba(0,0,0,.2),0 21px 33px 3px rgba(0,0,0,.14),0 8px 40px 7px rgba(0,0,0,.12);
}
& when (@level = 22) {
box-shadow: 0 10px 14px -6px rgba(0,0,0,.2),0 22px 35px 3px rgba(0,0,0,.14),0 8px 42px 7px rgba(0,0,0,.12);
}
& when (@level = 23) {
box-shadow: 0 11px 14px -7px rgba(0,0,0,.2),0 23px 36px 3px rgba(0,0,0,.14),0 9px 44px 8px rgba(0,0,0,.12);
}
& when (@level = 24) {
box-shadow: 0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);
}
// & when (@level = 1) {
// box-shadow: rgba(0, 0, 0, 0.117647) 0px 1px 6px, rgba(0, 0, 0, 0.117647) 0px 1px 4px;
// }
// & when (@level = 2) {
// box-shadow: rgba(0, 0, 0, 0.156863) 0px 3px 10px, rgba(0, 0, 0, 0.227451) 0px 3px 10px;
// }
// & when (@level = 3) {
// box-shadow: rgba(0, 0, 0, 0.188235) 0px 10px 30px, rgba(0, 0, 0, 0.227451) 0px 6px 10px;
// }
// & when (@level = 4) {
// box-shadow: rgba(0, 0, 0, 0.247059) 0px 14px 45px, rgba(0, 0, 0, 0.219608) 0px 10px 18px;
// }
// & when (@level = 5) {
// box-shadow: rgba(0, 0, 0, 0.298039) 0px 19px 60px, rgba(0, 0, 0, 0.219608) 0px 15px 20px;
// }
}
// Highlighted Links
.active-highlight(@color:rgba(255, 255, 255, 0.15)){
&:before {
content: '';
width: 100%;
height: 100%;
position: absolute;
left: 0;
top: 0;
background-color: @color;
background-repeat: no-repeat;
background-position: center;
background-size: 100% 100%;
opacity: 0;
pointer-events: none;
.transition(600ms);
}
&.active-state:before,
html:not(.watch-active-state) &:active:before {
opacity: 1;
.transition(150ms);
}
}
.active-highlight-color(@color) {
&:before {
background-image: -webkit-radial-gradient(center, circle cover, @color 66%, rgba(red(@color),green(@color),blue(@color),0) 66%);
background-image: radial-gradient(circle at center, @color 66%, rgba(red(@color),green(@color),blue(@color),0) 66%);
}
}
// No Scrollbar
.no-scrollbar() {
&::-webkit-scrollbar {
display: none !important;
width: 0 !important;
height: 0 !important;
-webkit-appearance: none;
opacity: 0 !important;
}
}
.ellipsis() {
white-space:nowrap;
text-overflow:ellipsis;
overflow:hidden;
word-wrap: break-word;
}

View File

@@ -0,0 +1,428 @@
//.van-tabs__line {
// width: 0.36667rem !important;
//}
#vjs_video_3 {
width: 100%;
}
.vjs-time-control{
display:block !important;
}
.vjs-remaining-time{
display: none !important;
}
html {
font-family: sans-serif; /* 1 */
-ms-text-size-adjust: 100%; /* 2 */
-webkit-text-size-adjust: 100%; /* 2 */
}
/**
* Remove the margin in all browsers (opinionated).
*/
body,p,ul,li,h1,h2,h3,h4,h5,h6 {
margin: 0;
}
/* HTML5 display definitions
========================================================================== */
/**
* Add the correct display in IE 9-.
* 1. Add the correct display in Edge, IE, and Firefox.
* 2. Add the correct display in IE.
*/
article,
aside,
details, /* 1 */
figcaption,
figure,
footer,
header,
main, /* 2 */
menu,
nav,
section,
summary { /* 1 */
display: block;
}
/**
* Add the correct display in IE 9-.
*/
audio,
canvas,
progress,
video {
display: inline-block;
}
/**
* Add the correct display in iOS 4-7.
*/
audio:not([controls]) {
display: none;
height: 0;
}
/**
* Add the correct vertical alignment in Chrome, Firefox, and Opera.
*/
progress {
vertical-align: baseline;
}
/**
* Add the correct display in IE 10-.
* 1. Add the correct display in IE.
*/
template, /* 1 */
[hidden] {
display: none;
}
/* Links
========================================================================== */
/**
* 1. Remove the gray background on active links in IE 10.
* 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
*/
a {
background-color: transparent; /* 1 */
-webkit-text-decoration-skip: objects; /* 2 */
}
/**
* Remove the outline on focused links when they are also active or hovered
* in all browsers (opinionated).
*/
a:active,
a:hover {
outline-width: 0;
}
/* Text-level semantics
========================================================================== */
/**
* 1. Remove the bottom border in Firefox 39-.
* 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
*/
abbr[title] {
border-bottom: none; /* 1 */
text-decoration: underline; /* 2 */
text-decoration: underline dotted; /* 2 */
}
/**
* Prevent the duplicate application of `bolder` by the next rule in Safari 6.
*/
b,
strong {
font-weight: inherit;
}
/**
* Add the correct font weight in Chrome, Edge, and Safari.
*/
b,
strong {
font-weight: bolder;
}
/**
* Add the correct font style in Android 4.3-.
*/
dfn {
font-style: italic;
}
/**
* Correct the font size and margin on `h1` elements within `section` and
* `article` contexts in Chrome, Firefox, and Safari.
*/
h1 {
font-size: 2em;
margin: 0.67em 0;
}
/**
* Add the correct background and color in IE 9-.
*/
mark {
background-color: #ff0;
color: #000;
}
/**
* Add the correct font size in all browsers.
*/
small {
font-size: 80%;
}
/**
* Prevent `sub` and `sup` elements from affecting the line height in
* all browsers.
*/
sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}
sub {
bottom: -0.25em;
}
sup {
top: -0.5em;
}
/* Embedded content
========================================================================== */
/**
* Remove the border on images inside links in IE 10-.
*/
img {
border-style: none;
}
/**
* Hide the overflow in IE.
*/
svg:not(:root) {
overflow: hidden;
}
/* Grouping content
========================================================================== */
/**
* 1. Correct the inheritance and scaling of font size in all browsers.
* 2. Correct the odd `em` font sizing in all browsers.
*/
code,
kbd,
pre,
samp {
font-family: monospace, monospace; /* 1 */
font-size: 1em; /* 2 */
}
/**
* Add the correct margin in IE 8.
*/
figure {
margin: 1em 40px;
}
/**
* 1. Add the correct box sizing in Firefox.
* 2. Show the overflow in Edge and IE.
*/
hr {
box-sizing: content-box; /* 1 */
height: 0; /* 1 */
overflow: visible; /* 2 */
}
/* Forms
========================================================================== */
/**
* 1. Change font properties to `inherit` in all browsers (opinionated).
* 2. Remove the margin in Firefox and Safari.
*/
button,
input,
select,
textarea {
font: inherit; /* 1 */
margin: 0; /* 2 */
}
/**
* Restore the font weight unset by the previous rule.
*/
optgroup {
font-weight: bold;
}
/**
* Show the overflow in IE.
* 1. Show the overflow in Edge.
*/
button,
input { /* 1 */
overflow: visible;
}
/**
* Remove the inheritance of text transform in Edge, Firefox, and IE.
* 1. Remove the inheritance of text transform in Firefox.
*/
button,
select { /* 1 */
text-transform: none;
}
/**
* 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
* controls in Android 4.
* 2. Correct the inability to style clickable types in iOS and Safari.
*/
button,
html [type="button"], /* 1 */
[type="reset"],
[type="submit"] {
-webkit-appearance: button; /* 2 */
}
/**
* Remove the inner border and padding in Firefox.
*/
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
border-style: none;
padding: 0;
}
/**
* Restore the focus styles unset by the previous rule.
*/
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
outline: 1px dotted ButtonText;
}
/**
* Change the border, margin, and padding in all browsers (opinionated).
*/
fieldset {
border: 1px solid #c0c0c0;
margin: 0 2px;
padding: 0.35em 0.625em 0.75em;
}
/**
* 1. Correct the text wrapping in Edge and IE.
* 2. Correct the color inheritance from `fieldset` elements in IE.
* 3. Remove the padding so developers are not caught out when they zero out
* `fieldset` elements in all browsers.
*/
legend {
box-sizing: border-box; /* 1 */
color: inherit; /* 2 */
display: table; /* 1 */
max-width: 100%; /* 1 */
padding: 0; /* 3 */
white-space: normal; /* 1 */
}
/**
* Remove the default vertical scrollbar in IE.
*/
textarea {
overflow: auto;
}
/**
* 1. Add the correct box sizing in IE 10-.
* 2. Remove the padding in IE 10-.
*/
[type="checkbox"],
[type="radio"] {
box-sizing: border-box; /* 1 */
padding: 0; /* 2 */
}
/**
* Correct the cursor style of increment and decrement buttons in Chrome.
*/
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
height: auto;
}
/**
* 1. Correct the odd appearance in Chrome and Safari.
* 2. Correct the outline style in Safari.
*/
[type="search"] {
-webkit-appearance: textfield; /* 1 */
outline-offset: -2px; /* 2 */
}
/**
* Remove the inner padding and cancel buttons in Chrome and Safari on OS X.
*/
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
-webkit-appearance: none;
}
/**
* Correct the text style of placeholders in Chrome, Edge, and Safari.
*/
::-webkit-input-placeholder {
color: inherit;
opacity: 0.54;
}
/**
* 1. Correct the inability to style clickable types in iOS and Safari.
* 2. Change font properties to `inherit` in Safari.
*/
::-webkit-file-upload-button {
-webkit-appearance: button; /* 1 */
font: inherit; /* 2 */
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 KiB

View File

@@ -0,0 +1,113 @@
<template lang="pug">
.Comment
ItemHeader
.list
div(v-if="commentList.length != 0")
.item(v-for="(item,index) in commentList" :key="index")
img.auth(:src="item.logo")
.right_info
.info_top
.top_left
p {{item.auth}}
span {{item.time}}
.top_right
img.zan(src="/img/icon/give_thumbs-up.png")
span {{ item.zan }}
.info_text {{item.content}}
.nodata(v-else)
img(src="/img/hm_bg_img_no.png")
p 快来发表你的评论吧
</template>
<script>
import ItemHeader from "./ItemHeader";
export default {
name: "Comment",
props: {
commentList: {
type: Array,
default: []
}
},
provide: {
title: '全部评论',
},
components: {
ItemHeader
}
}
</script>
<style scoped lang="less">
.Comment {
padding: 0.48rem 0.32rem;
box-sizing: border-box;
.list {
.item {
display: flex;
justify-content: space-between;
margin-bottom: 0.933rem;
.auth {
width: 0.933rem;
height: 0.933rem;
margin-right: 0.267rem;
}
.right_info {
width: 89%;
.info_top {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 0.307rem;
.top_left {
p {
font-size: 0.373rem;
line-height: 0.56rem;
color: #333333;
}
span {
font-size: 0.267rem;
color: #999999;
}
}
.top_right {
display: flex;
align-items: center;
img {
width: 0.347rem;
height: 0.36rem;
margin-right: 0.133rem;
vertical-align: bottom;
}
span {
font-size: 0.32rem;
color: #999999;
}
}
}
.info_text {
font-size: 0.373rem;
color: #333333;
}
}
}
.nodata {
width: 5.56rem;
margin: 0 auto;
margin-top: 0.6rem;
text-align: center;
img {
width: 5.56rem;
height: 4.653rem;
}
p {
margin-top: 0.68rem;
font-size: 0.373rem;
color: #999999;
}
}
}
}
</style>

View File

@@ -0,0 +1,70 @@
<template lang="pug">
.hello
h1 {{ msg }}
p
| For a guide and recipes on how to configure / customize this project,
br
| check out the
a(href='https://cli.vuejs.org', target='_blank', rel='noopener') vue-cli documentation
| .
h3 Installed CLI Plugins
ul
li
a(href='https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-plugin-babel', target='_blank', rel='noopener') babel
li
a(href='https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-plugin-router', target='_blank', rel='noopener') router
li
a(href='https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-plugin-vuex', target='_blank', rel='noopener') vuex
h3 Essential Links
ul
li
a(href='https://vuejs.org', target='_blank', rel='noopener') Core Docs
li
a(href='https://forum.vuejs.org', target='_blank', rel='noopener') Forum
li
a(href='https://chat.vuejs.org', target='_blank', rel='noopener') Community Chat
li
a(href='https://twitter.com/vuejs', target='_blank', rel='noopener') Twitter
li
a(href='https://news.vuejs.org', target='_blank', rel='noopener') News
h3 Ecosystem
ul
li
a(href='https://router.vuejs.org', target='_blank', rel='noopener') vue-router
li
a(href='https://vuex.vuejs.org', target='_blank', rel='noopener') vuex
li
a(href='https://github.com/vuejs/vue-devtools#vue-devtools', target='_blank', rel='noopener') vue-devtools
li
a(href='https://vue-loader.vuejs.org', target='_blank', rel='noopener') vue-loader
li
a(href='https://github.com/vuejs/awesome-vue', target='_blank', rel='noopener') awesome-vue
</template>
<script>
export default {
name: 'HelloWorld',
props: {
msg: String
}
}
</script>
<!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped lang="less">
h3 {
margin: 40px 0 0;
}
ul {
list-style-type: none;
padding: 0;
}
li {
display: inline-block;
margin: 0 10px;
}
a {
color: #42b983;
}
</style>

View File

@@ -0,0 +1,28 @@
<template lang="pug">
.itemHeader
.title {{title}}
</template>
<script>
export default {
name: "ItemHeader",
inject: ['title']
// props: {
// title: {
// type: String,
// default: ''
// }
// }
}
</script>
<style scoped lang="less">
.itemHeader {
.title {
height: 1.347rem;
line-height: 1.347rem;
font-size: 0.427rem;
color: #333333;
}
}
</style>

View File

@@ -0,0 +1,49 @@
<template lang="pug">
.swiper
van-swipe(@change='onChange')
van-swipe-item(v-for="(v,i) in swiper" :key="i")
img(:src="v")
template(#indicator='')
.custom {{ current + 1 }} / {{ swiper.length }}
</template>
<script>
export default {
name: "Swiper",
props: {
swiper: {
type: Array,
default: []
}
},
data () {
return {
current: 0,
}
},
methods: {
onChange(index) {
this.current = index;
},
}
}
</script>
<style scoped lang="less">
.swiper {
img {
width: 100%;
}
}
.custom {
position: absolute;
right: 0.533rem;
bottom: 0.627rem;
padding: 0.147rem 0.373rem;
font-size: 0.373rem;
background-color: rgb(0 0 0 / 0.6);
border-radius: 0.32rem;
color: #fff;
}
</style>

View File

@@ -0,0 +1,58 @@
<template lang="pug">
.tvList
.listItem(v-for="(item,index) in listData" :key="index" @click="itemClick(index)")
span(:class="index==active ? 'red' : '' ") {{ item.title }}
img(src="/img/act-list.gif" v-if="index==active")
</template>
<script>
export default {
name: "TvList",
props: {
listData: {
type: Array,
default: []
},
isActive: {
default: null
}
},
data() {
return {
active: this.isActive
}
},
async created() {
},
methods: {
itemClick(i) {
this.active = i;
this.$emit("change",i)
},
},
}
</script>
<style scoped lang="less">
.listItem {
display: flex;
justify-content: space-between;
padding: 0.507rem 0.813rem;
align-items: center;
border-top: 1px solid #e5e5e5;
.red {
color: red;
}
span {
font-size: 0.427rem;
}
img {
width: 0.36rem;
height: 0.4rem;
}
&:last-child {
border-bottom: 1px solid #e5e5e5;
}
}
</style>

View File

@@ -0,0 +1,62 @@
<template lang="pug">
.video
h2 视频播放
video-player.video-player-box(ref='videoPlayer'
:options='playerOptions',
:playsinline='true')
</template>
<script>
import 'videojs-contrib-hls';
export default {
name: "Live",
props: {
videoUrl: {
type: String
}
},
data() {
return {
playerOptions: {
playbackRates: [0.5, 1.0, 1.5, 2.0],
autoplay: false,
muted: false,
loop: false,
preload: 'none',
language: 'zh-CN',
aspectRatio: '16:9',
fluid: false,
sources: [{
type: 'application/x-mpegURL',
src: this.videoUrl,
}],
poster: '',
notSupportedMessage: '此视频暂无法播放,请稍后再试',
controlBar: {
// 当前时间和总时间的 分隔符
timeDivider: true,
//当前播放时间
currentTimeDisplay: true,
// 总时间
durationDisplay: true,
/**
* 区分 currentTimeDisplay,timeDivider,durationDisplay
* remainingTimeDisplay显示默认样式,只显示当前播放时间,一般
* 为false
*/
remainingTimeDisplay: false,
fullscreenToggle: true
}
}
}
},
created() {
console.log(this.videoUrl)
console.log(this.playerOptions.sources[0])
}
}
</script>
<style scoped>
</style>

View File

@@ -0,0 +1,130 @@
<template lang="pug">
.recommend
ItemHeader
//- 文章资讯页面的相关布局
.content_theme1(v-if=" theme == 'theme1'")
.item(v-for="(item,index) in list" :key="index" @click="enterInfo(item.id)")
//- router-link(:to={ path: "realTimeInfo", query: { id: item.id } })
.item_text
p {{ item.title}}
span {{ item.create_time}}
img.item_img(:src="item.icon")
// 视频页面的相关推荐布局
.content_theme2(v-else)
.item
.item_f(v-for="(item,index) in list" :key="index")
.f_time
img(:src="item.img")
.zz
span {{ item.videoTime}}
p(:class="index == 0 ? 'active': '' ") {{ item.title.substring(0,17)+'...'}}
</template>
<script>
import ItemHeader from "./ItemHeader";
export default {
props: {
theme: {
type: String,
default: 'theme1'
},
list: {
type: Array,
default: []
}
},
methods: {
enterInfo(id) {
this.$router.push({
path: '/realTimeInfo',
query: {
id: id
}
})
}
},
components: {
ItemHeader
}
}
</script>
<style scoped lang="less">
.recommend {
padding: 0.48rem 0.32rem;
box-sizing: border-box;
.content_theme1 {
.item {
display: flex;
justify-content: space-between;
margin-top: 0.2rem;
.item_text{
p {
font-size: 0.427rem;
line-height: 0.667rem;
color: #333333;
margin-bottom: 0.23rem;
}
span {
font-size: 0.32rem;
line-height: 0.747rem;
color: #999999;
}
}
.item_img{
width: 3.013rem;
height: 2.267rem;
border-radius: 0.053rem;
}
}
}
.content_theme2 {
.item {
display: flex;
overflow-x: auto;
.item_f {
.f_time {
width: 3.653rem;
height: 2.08rem;
border-radius: 0.053rem;
position: relative;
img {
width: 100%;
height: 100%;
}
.zz {
position: absolute;
width: 94%;
height: 93%;
z-index: 2;
background: #0000005c;
left: 4px;
top: 3px;
}
span {
position: absolute;
right: 0.187rem;
bottom: 0.173rem;
font-size: 0.293rem;
color: #ffffff;
z-index: 3;
}
}
p {
width: 3.653rem;
font-size: 0.373rem;
line-height: 0.627rem;
color: #333333;
}
.active {
color: #d0302c !important;
}
}
}
}
}
</style>

View File

@@ -0,0 +1,27 @@
import http from "../service";
import Vant from 'vant';
import VueVideoPlayer from 'vue-video-player'
import 'vant/lib/index.css';
import 'video.js/dist/video-js.css'
export default {
AjaxConfig: {
// 开发阶段的请求基地址
DevUrl: 'https://zbhapi.ahtv.cn/h5/',
// DevUrl: 'http://115.159.153.142:9010',
// 正式阶段的请求基地址
ProdUrl: 'http://115.159.153.142:9020/',
UrlList: {
Radio: 'radio',
TvList: 'channelList',
newsDetail: 'newsDetail'
}
},
NotVuePlugin: [
{ n: '$http', v: http }
],
VuePlugin: [
Vant,
VueVideoPlayer
]
}

View File

@@ -0,0 +1,87 @@
import axios from "axios";
import Utils from "../utils";
import { Toast, Dialog } from 'vant';
class Axios {
constructor() {
this.requestInterceptors()
this.responseInterceptors()
}
/**
* GET请求
* @param {*} object params
* {
* url: '',
* data: {}
* }
*/
async get(params) {
this.setBaseUrl()
return await axios.get(params.url, {
params: params.data
})
}
/**
* post 请求
*/
async post(params) {
this.setBaseUrl()
return await axios.post(params.url, params.data)
}
setBaseUrl () {
axios.defaults.baseURL = Utils.checkUrl();
}
/**
* 请求拦截器
*/
requestInterceptors() {
axios.interceptors.request.use(function (config) {
// 在发送请求之前做些什么
Toast.loading({
duration: 0,
forbidClick: true,
message: '数据加载中....',
});
return config;
}, function (error) {
// 对请求错误做些什么
return Promise.reject(error);
});
}
/**
* 响应拦截器
* 对响应数据做点什么
*/
responseInterceptors() {
axios.interceptors.response.use(function (response) {
Toast.clear();
switch (response.data.resultCode) {
case '500':
Dialog.alert({
title: '出现错误',
message: `【${response.data.resultCode}】 ${response.data.message}`,
});
// 出现错误,不希望返回数据给前端页面,那么这时候将程序在这里断掉
throw new Error(`【${response.data.resultCode}】 ${response.data.message}`)
break;
case '000':
return response.data.data;
break
}
}, function (error) {
// 对响应错误做点什么
return Promise.reject(error);
});
}
}
export default new Axios();

View File

@@ -0,0 +1,17 @@
import 'lib-flexible/flexible'
import Vue from 'vue'
import App from './App.vue'
import router from './router'
import store from './store'
import Config from './config'
Vue.config.productionTip = false
Config.VuePlugin.forEach(v => Vue.use(v))
Config.NotVuePlugin.forEach(v => Vue.prototype[v.n] = v.v)
new Vue({
router,
store,
render: h => h(App)
}).$mount('#app')

View File

@@ -0,0 +1,43 @@
import Vue from 'vue'
import VueRouter from 'vue-router'
Vue.use(VueRouter)
const routes = [
{
path: '/',
name: 'Home',
component: () => import(/* webpackChunkName: "about" */ '../views/Home.vue')
},
{
path: '/Radio',
name: 'Radio',
component: () => import(/* webpackChunkName: "about" */ '../views/Radio.vue')
},
{
path: '/Tv',
name: 'Tv',
component: () => import(/* webpackChunkName: "about" */ '../views/Tv.vue')
},
{
path: '/TvInfo',
name: 'TvInfo',
component: () => import(/* webpackChunkName: "about" */ '../views/TvInfo.vue')
},
{
path: '/Live',
name: 'Live',
component: () => import(/* webpackChunkName: "about" */ '../views/Live.vue')
},
{
path: '/realTimeInfo',
name: 'realTimeInfo',
component: () => import(/* webpackChunkName: "about" */ '../views/realTimeInfo.vue')
}
]
const router = new VueRouter({
routes
})
export default router

View File

@@ -0,0 +1,13 @@
import Config from "../config";
import Axios from "../http/axios";
class DetailService {
async newsDetail(data) {
return await Axios.get({
url: Config.AjaxConfig.UrlList.newsDetail,
data: data
})
}
}
export default new DetailService();

View File

@@ -0,0 +1,13 @@
import Config from "../config";
import Axios from "../http/axios";
class RadioService {
async Radio(data) {
return await Axios.get({
url: Config.AjaxConfig.UrlList.Radio,
data: data
})
}
}
export default new RadioService();

View File

@@ -0,0 +1,13 @@
import Config from "../config";
import Axios from "../http/axios";
class TvService {
async TvList(data) {
return await Axios.get({
url: Config.AjaxConfig.UrlList.TvList,
data: data
})
}
}
export default new TvService();

View File

@@ -0,0 +1,9 @@
import RadioService from "./RadioService"
import TvService from "./TvService"
import DetailService from "./DetailService"
export default {
RadioService: RadioService,
TvService: TvService,
DetailService: DetailService,
}

View File

@@ -0,0 +1,15 @@
import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)
export default new Vuex.Store({
state: {
},
mutations: {
},
actions: {
},
modules: {
}
})

View File

@@ -0,0 +1,14 @@
import Config from "../config"
class Utils {
checkUrl() {
// 开发阶段
if (process.env.NODE_ENV == "development") {
return Config.AjaxConfig.DevUrl
// 正式阶段
} else {
return Config.AjaxConfig.ProdUrl
}
}
}
export default new Utils;

View File

@@ -0,0 +1,50 @@
<template lang="pug">
.home
van-tabs(v-model='active',
line-width="20"
animated
@change="changeTabs"
swipeable)
van-tab(title="包河Radio")
Radio
van-tab(title="包河TV")
Tv
van-tab(title="融媒直播")
Live
</template>
<script>
import Radio from "./Radio";
import Tv from "./Tv";
import Live from "./Live";
export default {
data () {
return {
active: 0
}
},
created() {
this.active = parseInt(this.$route.query.active)
},
methods: {
changeTabs(index) {
this.$router.push({
path: '/',
query: {
active: this.active
}
})
}
},
components: {
Radio,
Tv,
Live
}
}
</script>
<style lang="less">
</style>

View File

@@ -0,0 +1,84 @@
<template lang="pug">
.Live
Recommend(theme="theme1" :list="RecommendList")
Comment(:comment-list="CommentList")
Swiper(:swiper="SwiperList")
</template>
<script>
import Recommend from "../components/recommend";
import Comment from "../components/Comment";
import Swiper from "../components/Swiper";
export default {
name: "Live",
components: {
Recommend,
Comment,
Swiper
},
provide: {
title: '相关推荐',
},
data() {
return {
// title: '相关推荐',
RecommendList: [
{
title: '合肥首个铁路主题公园来了!规模等于两个逍遥津!目测会火,位置在这' ,
img: '/img/recommend_right.png',
date: '2019-10-6',
videoTime: '03:07'
},
{
title: '合肥首个铁路主题公园来了!规模等于两个逍遥津!目测会火,位置在这' ,
img: '/img/recommend_right.png',
date: '2019-10-6',
videoTime: '03:07'
},
{
title: '合肥首个铁路主题公园来了!规模等于两个逍遥津!目测会火,位置在这' ,
img: '/img/recommend_right.png',
date: '2019-10-6',
videoTime: '03:07'
},
{
title: '合肥首个铁路主题公园来了!规模等于两个逍遥津!目测会火,位置在这' ,
img: '/img/recommend_right.png',
date: '2019-10-6',
videoTime: '03:07'
},
{
title: '合肥首个铁路主题公园来了!规模等于两个逍遥津!目测会火,位置在这' ,
img: '/img/recommend_right.png',
date: '2019-10-6',
videoTime: '03:07'
},
],
CommentList: [
{
logo: '/img/radio_up.png',
auth: '呆小瓜',
time: '3秒前',
zan: 15,
content: "这里是评论的文字这里是评论的文字这里是评论的文字这里是评论的文字这里是评论的文字这里是评论的文字这里是评论的文字"
},
{
logo: '/img/radio_up.png',
auth: '哈哈哈',
time: '10秒前',
zan: 999,
content: "错误的分为非威风无法威锋网成为"
}
],
SwiperList: [
'/img/banner.png','/img/banner.png','/img/banner.png','/img/banner.png','/img/banner.png'
]
}
}
}
</script>
<style scoped>
</style>

View File

@@ -0,0 +1,79 @@
<template lang="pug">
.Radio
.title 包河之声
img(class="default_frontcover" :src="list.default_frontcover")
img(class="process" :src="GifIcon")
.action
img.refresh(src="/img/live_broadcast_icon.png")
img.play(:src="AudioIcon" @click="PlayAudio")
img.list(src="/img/program_list_icon.png")
video-player.video-player-box(ref='videoPlayer', v-show="false"
:options='playerOptions',
:playsinline='true')
</template>
<script>
import 'videojs-contrib-hls';
export default {
name: "Radio",
data() {
return {
list: {},
AudioIcon: "/img/radio_up.png",
GifIcon: "/img/sound_spectrum.png",
playerOptions: {
height: '360',
autoplay: false,
muted: false,
language: 'en',
playbackRates: [0.7, 1.0, 1.5, 2.0],
sources: [{
type: 'application/x-mpegURL',
src: "http://vjs.zencdn.net/v/oceans.mp4",
}],
poster: "https://surmon-china.github.io/vue-quill-editor/static/images/surmon-1.jpg",
notSupportedMessage: '此视频暂无法播放,请稍后再试'
}
}
},
created() {
this.GetRadio()
},
mounted() {
},
methods: {
async GetRadio() {
this.list = await this.$http.RadioService.Radio({});
console.log(this.list)
this.playerOptions.sources[0].src = "http://video.geekhelp.cn/vue34"
// this.playerOptions.sources[0].src = this.list.play_url
},
/**
* 点击按钮播放
* @constructor
*/
PlayAudio() {
// 播放按钮
if (this.AudioIcon.includes("radio_up")) {
this.AudioIcon = "/img/radio_stop.png"
this.GifIcon = "/img/sound_spectrum.gif"
this.$refs.videoPlayer.player.play()
} else {
this.AudioIcon = "/img/radio_up.png"
this.GifIcon = "/img/sound_spectrum.png"
this.$refs.videoPlayer.player.pause()
}
}
}
}
</script>
<style scoped lang="less">
@import "~@less/page/Radio.less";
</style>

View File

@@ -0,0 +1,45 @@
<template lang="pug">
.TV
TvList(:list-data="list" :is-show="false" @change="EnterInfo")
</template>
<script>
import TvList from "@/components/TvList"
export default {
name: "Tv",
components: {
TvList
},
data() {
return {
list: [],
params: {
page: 1,
count: 15
}
}
},
async created() {
await this.GetTvList()
},
methods: {
EnterInfo(index) {
this.$router.push({
path: '/TvInfo',
query: {
id: index
}
})
},
async GetTvList() {
let res = await this.$http.TvService.TvList(this.params);
this.list = res;
console.log(res)
}
}
}
</script>
<style scoped>
</style>

View File

@@ -0,0 +1,57 @@
<template lang="pug">
.TvInfo
Video(:video-url="VideoUrl" v-if="VideoUrl.length != 0")
TvList(:list-data="list" :is-active="index" @change="EnterInfo")
</template>
<script>
import TvList from "@/components/TvList";
import Video from "@/components/Video";
export default {
name: "TvInfo",
data() {
return {
list: [],
params: {
page: 1,
count: 15
},
VideoUrl: '',
index: this.$route.query.id
}
},
beforeRouteUpdate(to, from, next) {
this.GetTvList()
next()
},
async created() {
await this.GetTvList()
},
methods: {
EnterInfo(index) {
this.index = index;
this.$router.push({
path: '/TvInfo',
query: {
id: index
}
})
},
async GetTvList() {
let res = await this.$http.TvService.TvList(this.params);
// this.VideoUrl = res[this.index].play_url;
this.VideoUrl = "http://video.geekhelp.cn/vue34";
this.list = res;
}
},
components: {
TvList,
Video
},
}
</script>
<style scoped>
</style>

View File

@@ -0,0 +1,67 @@
<template lang="pug">
.realTimeInfo(v-if="Object.keys(list).length != 0")
.infoConten
p.title {{list.detail.title}}
p.text {{list.detail.publish_time}} 浏览量{{list.detail.viewer_count}}万
.content(v-html="list.detail.content")
Recommend(theme="theme1" :list="list.recommend" )
Comment(:comment-list="list.comment")
</template>
<script>
import Comment from "@com/Comment";
import Recommend from "@com/recommend";
import Swiper from "@com/Swiper";
export default {
name: "realTimeInfo",
data () {
return {
list: {}
}
},
provide: {
title: '相关推荐',
},
created() {
this.getData(this.$route.query.id)
},
methods: {
async getData(id) {
this.list = await this.$http.DetailService.newsDetail({ id: id });
}
},
beforeRouteUpdate (to, from, next) {
this.getData(to.query.id)
next()
},
components: {
Recommend,
Comment,
Swiper
},
}
</script>
<style scoped lang="less">
.infoConten {
padding-left: 0.307rem;
padding-right: 0.307rem;
.title {
font-size: 0.533rem;
line-height: 0.72rem;
letter-spacing: 0.013rem;
color: #333333;
margin-bottom: 0.507rem;
}
.text {
font-family: PingFang-SC-Medium;
font-size: 0.32rem;
color: #999999;
margin-bottom: 0.907rem;
}
}
</style>

View File

@@ -0,0 +1,37 @@
const path = require('path');
module.exports = {
publicPath: './',
css: {
loaderOptions: {
postcss: {
plugins: [
require('postcss-pxtorem')({
rootValue: 37.5, // 换算的基数
selectorBlackList: ['weui', 'mu'], // 忽略转换正则匹配项
propList: ['*'],
}),
]
}
}
},
chainWebpack: (config) => {
// 配置pug的
config.module.rule('pug')
.test(/\.pug$/)
.use('pug-html-loader')
.loader('pug-html-loader')
.end();
// 路径别名
config.resolve.alias
.set('@',resolve('src'))
.set('@com',resolve('src/components'))
.set('@less',resolve('src/assets/less'))
}
}
function resolve(dir) {
return path.join(__dirname, dir);
}

View File

@@ -0,0 +1,69 @@
1:
模块:
【韩想】 1:首页
radio
tv
融媒直播
【朱静】2:新闻资讯页面 (app没有连接,通过地址访问)
未展开
展开
【赵俊凯】3:视频播放页面 (app没有连接,通过地址访问)
简洁展开
简洁未展开
【朱静】4:视频直播页面 (通过 融媒直播 点击进入)
视频未开始直播
视频已开始直播
【韩想】 5:帖子页面 (app没有连接,通过地址访问)
【赵俊凯】6:看电视 (通过 tv 点击进入)
看电视详情的频道
看电视详情的有评论
看电视详情的无评论
组件封装
【完成】【朱静】 1:相关推荐组件 vue
【完成】【朱静】 2:全部评论组件
【赵俊凯】3:打开app查看全部评论
【韩想】 4:顶部在包河头部
【完成】【刘兵】5:视频播放组件
【赵俊凯】6:轮播图封装成组件
【完成】【韩想】 7:TV列表也是组件
html
query: { id: 1 }
<router-link :to="{ path: '/rrr' , params: { page: 1 } }"></router-link>
<a href="/rrr?id=1"></a>
<a href="/rrr/1"></a>
js
this.$router.push({
name: '',
paths: '',
query: { // rrr?id=1
id: 1
},
params: { // rrr/1
id: 1
}
})
query: http://www.a.com?id=1&page=2&name=222
params: http://www.a.com/1/2/222
query: this.$route.query.xxx
params: this.$route.params.xxx 需要后端配置路由重写进行支持

View File

@@ -0,0 +1,29 @@
## 1:李跃文蓝湖账户密码
蓝湖登录地址:[https://lanhuapp.com/web/#/user/login](https://lanhuapp.com/web/#/user/login)
用户名:1179374943@qq.com
密码:lyw117937
## 2:SVN 账户
项目地址:[https://htsvn.ahtv.cn/svn/hmbh_H5](https://htsvn.ahtv.cn/svn/hmbh_H5)
账户:liub01
密码:WCSnQmj9na7CfNki
## 3:接口文档
地址:[http://115.159.153.142:89/web/#/42?page_id=1096](http://115.159.153.142:89/web/#/42?page_id=1096)
密码:zbh2019
分享接口
http://htwx.ahtv.cn/htwx/share/index
方法:POST
参数:url:base64加密的分享页地址
返回值:
{ "appId": "wxd78ad1c7e16e3eff", "nonceStr": "nIasJhlVgFWqAIya", "timestamp": 1575859870, "url": "http://htwx.ahtv.cn/wx2/dist/app.html#/video/?video_id=28048", "signature": "af34059cdc49bade7c5e08f3a98d7c84e39974ba", "rawString": "jsapi_ticket=HoagFKDcsGMVCIY2vOjf9mB8IL3KSXoUfAAOBvIO0W2W1JUFUaiPMLrNeGBkxMq2I5kHvMn6pBBJaA5TKhiSbA&noncestr=nIasJhlVgFWqAIya&timestamp=1575859870&url=http://htwx.ahtv.cn/wx2/dist/app.html#/video/?video_id=28048"}

View File

@@ -0,0 +1,16 @@
/* 专门用来重置浏览器默认样式的 */
body, p,ul,li,h1,h2,h3,h4,h5,h6,input{
margin: 0;
padding: 0;
}
input {
outline: none;
}
li {
list-style: none;
}
a {
text-decoration: none;
}

Some files were not shown because too many files have changed in this diff Show More