以尽量还原页面为目的。可滑动。
HTML:
<!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="https://s1.hdslb.com/bfs/static/jinkela/mstation-h5/css/mstation.6.425e6f5fbc4ae5e22dfcf88c6642bb8562b4726e.css">
<link rel="stylesheet" href="./02bilibili.css">
</head>
<body>
<!-- 1.头部 -->
<header>
<div class="header-top">
<img class="header-top-logo" src="https://s1.hdslb.com/bfs/static/jinkela/long/mstation/logo-bilibili-pink.png@132w_60h_1c.webp" alt="">
<div class="header-top-right">
<i class="iconfont ic_search_tab"></i>
<img src="https://i1.hdslb.com/bfs/face/00de4a711009ecaac84f9a3b4eeb353a773fa503.jpg@48w_48h_1c.webp"
alt="">
<div>下载 App</div>
</div>
</div>
<div class="header-nav">
<!-- 溢出隐藏 -->
<div class="header-nav-left">
<div class="header-nav-list">
<div class="header-nav-item" style="color: #f69;">首页</div>
<div class="header-nav-item">动画</div>
<div class="header-nav-item">番剧</div>
<div class="header-nav-item">国创</div>
<div class="header-nav-item">音乐</div>
<div class="header-nav-item">舞蹈</div>
<div class="header-nav-item">会员购</div>
<div class="header-nav-item">直播</div>
<div class="header-nav-line"></div>
</div>
</div>
<!-- 自己起的类名,在最后 -->
<i class="iconfont general_pulldown_s header-nav-arrow"></i>
</div>
</header>
<!-- 2.主体内容 -->
<div class="main">
<div class="main-item">
<!-- 图片 -->
<div style="position: relative;">
<img src="https://i1.hdslb.com/bfs/archive/ec3cd9f7a3374002e9aedbc01c6a4aa56ee8e14c.jpg@960w_540h_1c.webp"
alt="">
<div class="main-item-play">
<!-- 播放量 -->
<div>
<i class="iconfont icon_shipin_bofangshu" style="margin-right: 1.33vw;"></i>
<span>175300</span>
</div>
<!-- 弹幕量 -->
<div class="main-item-danmu">
<i class="iconfont icon_shipin_danmushu" style="margin-right: 1.33vw;"></i>
<span>175300</span>
</div>
</div>
</div>
<!-- 文字 -->
<div class="main-item-text">
内容爆炸!《崩坏3》×《崩坏:星穹铁道》联动幕后揭秘
</div>
</div>
<div class="main-item">
<!-- 图片 -->
<div style="position: relative;">
<img src="https://i1.hdslb.com/bfs/archive/ec3cd9f7a3374002e9aedbc01c6a4aa56ee8e14c.jpg@960w_540h_1c.webp"
alt="">
<div class="main-item-play">
<!-- 播放量 -->
<div>
<i class="iconfont icon_shipin_bofangshu" style="margin-right: 1.33vw;"></i>
<span>175300</span>
</div>
<!-- 弹幕量 -->
<div class="main-item-danmu">
<i class="iconfont icon_shipin_danmushu" style="margin-right: 1.33vw;"></i>
<span>175300</span>
</div>
</div>
</div>
<!-- 文字 -->
<div class="main-item-text">
内容爆炸!《崩坏3》×《崩坏:星穹铁道》联动幕后揭秘
</div>
</div>
<div class="main-item">
<!-- 图片 -->
<div style="position: relative;">
<img src="https://i1.hdslb.com/bfs/archive/ec3cd9f7a3374002e9aedbc01c6a4aa56ee8e14c.jpg@960w_540h_1c.webp"
alt="">
<div class="main-item-play">
<!-- 播放量 -->
<div>
<i class="iconfont icon_shipin_bofangshu" style="margin-right: 1.33vw;"></i>
<span>175300</span>
</div>
<!-- 弹幕量 -->
<div class="main-item-danmu">
<i class="iconfont icon_shipin_danmushu" style="margin-right: 1.33vw;"></i>
<span>175300</span>
</div>
</div>
</div>
<!-- 文字 -->
<div class="main-item-text">
内容爆炸!《崩坏3》×《崩坏:星穹铁道》联动幕后揭秘
</div>
</div>
<div class="main-item">
<!-- 图片 -->
<div style="position: relative;">
<img src="https://i1.hdslb.com/bfs/archive/ec3cd9f7a3374002e9aedbc01c6a4aa56ee8e14c.jpg@960w_540h_1c.webp"
alt="">
<div class="main-item-play">
<!-- 播放量 -->
<div>
<i class="iconfont icon_shipin_bofangshu" style="margin-right: 1.33vw;"></i>
<span>175300</span>
</div>
<!-- 弹幕量 -->
<div class="main-item-danmu">
<i class="iconfont icon_shipin_danmushu" style="margin-right: 1.33vw;"></i>
<span>175300</span>
</div>
</div>
</div>
<!-- 文字 -->
<div class="main-item-text">
内容爆炸!《崩坏3》×《崩坏:星穹铁道》联动幕后揭秘
</div>
</div>
<div class="main-item">
<!-- 图片 -->
<div style="position: relative;">
<img src="https://i1.hdslb.com/bfs/archive/ec3cd9f7a3374002e9aedbc01c6a4aa56ee8e14c.jpg@960w_540h_1c.webp"
alt="">
<div class="main-item-play">
<!-- 播放量 -->
<div>
<i class="iconfont icon_shipin_bofangshu" style="margin-right: 1.33vw;"></i>
<span>175300</span>
</div>
<!-- 弹幕量 -->
<div class="main-item-danmu">
<i class="iconfont icon_shipin_danmushu" style="margin-right: 1.33vw;"></i>
<span>175300</span>
</div>
</div>
</div>
<!-- 文字 -->
<div class="main-item-text">
内容爆炸!《崩坏3》×《崩坏:星穹铁道》联动幕后揭秘
</div>
</div>
<div class="main-item">
<!-- 图片 -->
<div style="position: relative;">
<img src="https://i1.hdslb.com/bfs/archive/ec3cd9f7a3374002e9aedbc01c6a4aa56ee8e14c.jpg@960w_540h_1c.webp"
alt="">
<div class="main-item-play">
<!-- 播放量 -->
<div>
<i class="iconfont icon_shipin_bofangshu" style="margin-right: 1.33vw;"></i>
<span>175300</span>
</div>
<!-- 弹幕量 -->
<div class="main-item-danmu">
<i class="iconfont icon_shipin_danmushu" style="margin-right: 1.33vw;"></i>
<span>175300</span>
</div>
</div>
</div>
<!-- 文字 -->
<div class="main-item-text">
内容爆炸!《崩坏3》×《崩坏:星穹铁道》联动幕后揭秘
</div>
</div>
<div class="main-item">
<!-- 图片 -->
<div style="position: relative;">
<img src="https://i1.hdslb.com/bfs/archive/ec3cd9f7a3374002e9aedbc01c6a4aa56ee8e14c.jpg@960w_540h_1c.webp"
alt="">
<div class="main-item-play">
<!-- 播放量 -->
<div>
<i class="iconfont icon_shipin_bofangshu" style="margin-right: 1.33vw;"></i>
<span>175300</span>
</div>
<!-- 弹幕量 -->
<div class="main-item-danmu">
<i class="iconfont icon_shipin_danmushu" style="margin-right: 1.33vw;"></i>
<span>175300</span>
</div>
</div>
</div>
<!-- 文字 -->
<div class="main-item-text">
内容爆炸!《崩坏3》×《崩坏:星穹铁道》联动幕后揭秘
</div>
</div>
<div class="main-item">
<!-- 图片 -->
<div style="position: relative;">
<img src="https://i1.hdslb.com/bfs/archive/ec3cd9f7a3374002e9aedbc01c6a4aa56ee8e14c.jpg@960w_540h_1c.webp"
alt="">
<div class="main-item-play">
<!-- 播放量 -->
<div>
<i class="iconfont icon_shipin_bofangshu" style="margin-right: 1.33vw;"></i>
<span>175300</span>
</div>
<!-- 弹幕量 -->
<div class="main-item-danmu">
<i class="iconfont icon_shipin_danmushu" style="margin-right: 1.33vw;"></i>
<span>175300</span>
</div>
</div>
</div>
<!-- 文字 -->
<div class="main-item-text">
内容爆炸!《崩坏3》×《崩坏:星穹铁道》联动幕后揭秘
</div>
</div>
</div>
<!-- 3.固定按钮 -->
<div class="download">
<i class="iconfont Navbar_logo"></i>
<span>打开App,看你感兴趣的视频</span>
</div>
</body>
</html>
图片和字体图标引用官网在线图片图标!除了顶部头像外。
CSS:
这里用less语言写的,会自动生成css文件,记得引用。
创建less文件——保存——引用
*{
margin: 0;
padding: 0;
box-sizing: border-box;
}
header{
position: fixed;
background-color: #fff;
z-index: 3;
}
.header{
&-top{
display: flex;
justify-content: space-between;
height: 11.73vw;
align-items: center;
padding: 0 3.2vw 0 4.8vw;
&-logo{
width: 17.6vw;
height: 8vw;
}
&-right{
display: flex;
i{
font-size: 5.87vw;
color: #ccc;
margin-right: 5.87vw;
}
img{
width: 6.4vw;
height: 6.4vw;
border-radius: 50%;
margin-right: 3.2vw;
}
div{
width: 19.2vw;
height: 6.4vw;
color: #fff;
font-size: 3.2vw;
background-color: #f69;
line-height: 6.4vw;
text-align: center;
border-radius: 1.06667vw;
margin-left: 2.13vw;
}
}
}
&-nav{
display: flex;
justify-content: space-between;
align-items: center;
border-bottom: 1px solid #e7e7e7;
&-left{
width: 89.33vw;
height: 10.67vw;
overflow: hidden;
}
&-list{
display: flex;
position: relative;
}
&-item{
// 在手机端,为了让用户好点击,用padding
padding: 0 4.27vw;
// 给子元素设置,让它不会变形.
flex-shrink: 0;
line-height: 10.67vw;
font-size: 3.73vw;
color: #505050;
}
&-line{
position: absolute;
left: 4.27vw;
bottom: 0vw;
width: 7.47vw;
height: 0.53vw;
background-color: #f69;
}
&-arrow{
margin: 0 2.67vw;
color: #aaa;
}
}
}
.main{
display: flex;
flex-wrap: wrap;
width: 100vw;
padding: 0 1.33vw;
padding-top: 22.67vw;
&-item{
flex: 50%;
flex-shrink: 0;
padding: 2.13vw 1.2vw;
img{
width: 46.13vw;
height: 25.87vw;
}
&-text{
width: 46.13vw;
font-size: 3.2vw;
color: #212121;
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-box-orient: vertical;
line-clamp: 2;
-webkit-line-clamp: 2;
margin-top: 1.6vw;
}
&-play{
width: 100%;
position: absolute;
left: 0;
bottom: 0;
display: flex;
justify-content: space-between;
color: #fff;
font-size: 3.2vw;
background: linear-gradient(0deg, rgba(0, 0, 0, .85), transparent);
padding: 1.33vw 1.6vw;
}
&-danmu{
display: flex;
justify-content: end;
}
}
}
.download{
position: fixed;
left: 50%;
bottom: 8vw;
// 基于左上角移动50%,让本体往回移动50%
transform: translate(-50%);
background-color: #f69;
width: 93.6vw;
height: 9.87vw;
border-radius: 6.6vw;
display: flex;
justify-content: center;
align-items: center;
color: #fff;
font-size: 3.73vw;
i{
margin-right: 2.67vw;
}
}