Sat Jun 17 12:08:00 UTC 2023 inscode

上级 5ffe29fa
<!DOCTYPE html>
<html lang="en">
<html>
<head>
<meta charset="UTF-8">
<title>My Blog</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.6.0/css/bootstrap.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/OwlCarousel2/2.3.4/assets/owl.carousel.min.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/OwlCarousel2/2.3.4/assets/owl.theme.default.min.css">
<title>音乐播放器</title>
<!-- 引入样式文件 -->
<link rel="stylesheet" href="style.css">
<style>
.carousel .carousel-inner img {
width: 100%;
height: auto;
}
.music-player {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
width: 400px;
height: 200px;
background: #f1f1f1;
border-radius: 10px;
padding: 20px;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}
.card-img-top {
max-height: 200px;
object-fit: cover;
}
button {
border: none;
color: white;
padding: 10px 20px;
border-radius: 5px;
font-size: 16px;
cursor: pointer;
margin: 10px;
}
.card-body {
padding: 1rem;
}
#play-button {
background-color: #4CAF50;
}
.card-title {
font-size: 1.5rem;
}
#stop-button {
background-color: #f44336;
}
.card-text {
font-size: 1rem;
}
input[type="range"] {
width: 100%;
-webkit-appearance: none;
margin: 10px 0;
}
.video-container {
position: relative;
padding-bottom: 56.25%;
height: 0;
overflow: hidden;
}
input[type="range"]:focus {
outline: none;
}
.video-container iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
input[type="range"]::-webkit-slider-runnable-track {
width: 100%;
height: 5px;
cursor: pointer;
background: #ddd;
border-radius: 1px;
}
@media (min-width: 576px) {
.card-columns {
column-count: 2;
}
}
input[type="range"]::-webkit-slider-thumb {
height: 20px;
width: 20px;
border-radius: 5px;
background: #2196F3;
cursor: pointer;
-webkit-appearance: none;
margin-top: -8.5px;
}
@media (min-width: 768px) {
.card-columns {
column-count: 3;
}
}
@media (min-width: 992px) {
.card-columns {
column-count: 4;
}
}
@media (min-width: 1200px) {
.card-columns {
column-count: 5;
}
}
</style>
</head>
<body>
<script>
// 获取元素
const audio = document.getElementById('my-audio');
const playBtn = document.getElementById('play-button');
const stopBtn = document.getElementById('stop-button');
const volumeSlider = document.getElementById('volume-slider');
<!-- 导航栏 -->
<nav class="navbar navbar-expand-lg navbar-dark bg-dark">
<a class="navbar-brand" href="#">My Blog</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarNav">
<ul class="navbar-nav">
<li class="nav-item active">
<a class="nav-link" href="#">Home</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">About</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Blog</a>
</li>
</ul>
</div>
</nav>
// 播放/暂停按钮
playBtn.addEventListener('click', () => {
if (audio.paused) {
audio.play();
playBtn.innerHTML = '暂停';
} else {
audio.pause();
playBtn.innerHTML = '播放';
}
});
<!-- 轮播图 -->
<div class="carousel">
<div class="owl-carousel owl-theme">
<div class="item"><img src="https://picsum.photos/id/1003/800/400" alt=""></div>
<div class="item"><img src="https://picsum.photos/id/1007/800/400" alt=""></div>
<div class="item"><img src="https://picsum.photos/id/1010/800/400" alt=""></div>
<div class="item"><img src="https://picsum.photos/id/1011/800/400" alt=""></div>
</div>
</div>
// 停止按钮
stopBtn.addEventListener('click', () => {
audio.pause();
audio.currentTime = 0;
playBtn.innerHTML = '播放';
});
<!-- 网页内容 -->
<div class="container mt-4">
<h2>Latest Posts</h2>
<hr>
<div class="card-columns">
<div class="card">
<img class="card-img-top" src="https://picsum.photos/id/1015/400/200" alt="">
<div class="card-body">
<h5 class="card-title">Card title</h5>
<p class="card-text">This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.</p>
</div>
</div>
<div class="card">
<img class="card-img-top" src="https://picsum.photos/id/1025/400/200" alt="">
<div class="card-body">
<h5 class="card-title">Card title</h5>
<p class="card-text">This card has supporting text below as a natural lead-in to additional content.</p>
</div>
</div>
<div class="card">
<img class="card-img-top" src="https://picsum.photos/id/1024/400/200" alt="">
<div class="card-body">
<h5 class="card-title">Card title</h5>
<p class="card-text">This is a wider card with supporting text below as a natural lead-in to additional content. This card has even longer content than the first to show that equal height action.</p>
</div>
</div>
<div class="card">
<img class="card-img-top" src="https://picsum.photos/id/1019/400/200" alt="">
<div class="card-body">
<h5 class="card-title">Card title</h5>
<p class="card-text">This is a wider card with supporting text below as a natural lead-in to additional content. This card has even longer content than the first to show that equal height action.</p>
</div>
</div>
<div class="card">
<img class="card-img-top" src="https://picsum.photos/id/1031/400/200" alt="">
<div class="card-body">
<h5 class="card-title">Card title</h5>
<p class="card-text">This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.</p>
</div>
</div>
<div class="card">
<img class="card-img-top" src="https://picsum.photos/id/1014/400/200" alt="">
<div class="card-body">
<h5 class="card-title">Card title</h5>
<p class="card-text">This card has supporting text below as a natural lead-in to additional content.</p>
</div>
</div>
</div>
<div class="mt-4">
<h2>Video Tutorial</h2>
<hr>
<div class="video-container">
<iframe src="https://www.youtube.com/embed/dQw4w9WgXcQ" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>
</div>
</div>
</div>
<!-- JavaScript插件 -->
<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.6.0/js/bootstrap.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/OwlCarousel2/2.3.4/owl.carousel.min.js"></script>
<script>
$(document).ready(function() {
$('.owl-carousel').owlCarousel({
loop: true,
margin: 10,
nav: true,
responsive: {
0: {
items: 1
},
600: {
items: 2
},
1000: {
items: 3
}
}
})
});
</script>
// 音量控制
volumeSlider.addEventListener('input', () => {
audio.volume = volumeSlider.value;
});
</script>
</head>
<body>
<!-- 音乐播放器容器,可以自定义大小和样式 -->
<div class="music-player">
<!-- 音乐播放器控件 -->
<audio id="my-audio">
<!-- 音乐文件 -->
<source src="music.mp3" type="audio/mpeg">
<!-- 兼容性处理 -->
您的浏览器不支持audio标签。
</audio>
<!-- 播放/暂停按钮 -->
<button id="play-button">播放</button>
<!-- 停止按钮 -->
<button id="stop-button">停止</button>
<!-- 音量控制 -->
<input type="range" id="volume-slider" min="0" max="1" step="0.1" value="1">
</div>
<!-- 引入脚本文件 -->
<script src="script.js"></script>
</body>
</html>
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册