5.web前端网页制作 音乐网站网页设计实例 大学生期末大作业 html+css+js

本文以音乐网站为主题,介绍了用HTML+CSS+JS设计网页的过程。包含网页简介、编辑方式、知识应用等内容,展示了HTML、CSS、JS代码示例,总结了页面设计要求,还提供交流分享途径,适合前端初学者学习。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

本实例为html+css+js。该实例设置导航栏效果效果、动态轮播特效、DIV、Banner、注册、登录页面等实例比较全面,有助于各位大小朋友学习,本文以“音乐”网站为主题来设计实践,介绍如何通过从头开始设计音乐网站并将其转换为代码的过程。


一、网页介绍

1.网页简介

此实例系统文件种类包含:HTML结构文件、css网页样式文件、js网页特效文件、images网页图片文件;画面精明,代码简短,为简单学生水平, 非常适合初学者学习使用。

2.网页编辑

网页作品代码简单,可使用任意HTML编辑软件(如:Dreamweaver、HBuilder、Vscode 、Sublime 、Webstorm、Text 、Notepad++ 等任意html编辑软件进行运行及修改编辑等操作)。兼容各大主流浏览器、显示效果稳定的浮动网页布局结构,已达到打开后就能即时看到网站的效果。

3.知识应用

采用最新的网页编程语言HTML5+CSS3+JS程序语言完成网站的功能设计,js动态轮播特效, 点击事件、导航栏效果、DIV、Banner、注册、登录页面等。


二、网页效果

提示:以下是本篇文章正文内容,下面案例供参考:


三、代码展示

1.HTML

代码如下(节选示例):

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>首页</title>
<link href="css/style.css" rel="stylesheet" type="text/css">
</head>
<body>
<div class="top">
<div class="logo"><img src="images/logo.png" /></div>
<div class="nav">
<ul>
<li><a href="index.html">网站首页</a></li>
<li><a href="gedan.html">全部歌单</a></li>
<li><a href="paihang.html">排行榜</a></li>
<li><a href="denglu.html">会员登陆</a></li>
<li><a href="zhuce.html">会员注册</a></li>
</ul>
</div>
</div>
<div class="box" id="box">
    <div class="inner">
        <!--轮播图-->
        <ul>
            <li><a href="#"><img  src="images/banner1.jpg" alt=""></a></li>
            <li><a href="#"><img  src="images/banner2.jpg" alt=""></a></li>
            <li><a href="#"><img src="images/banner3.jpg" alt=""></a></li>
 
        </ul>
 
        <ol class="bar">
 
        </ol>
        <!--左右焦点-->
        <div id="arr">
                    <span id="left">
                        <
                    </span>
            <span id="right">
                        >
                    </span>
        </div>
 
    </div>
</div>
<script type="text/javascript" src="js/banner.js"></script>
<div class="box1">
<div class="title">歌单推荐</div>
<div class="tit">
<ul>
<li><a href="#">为你推荐</a></li>
<li><a href="#">经典国语</a></li>
<li><a href="#">轻音乐</a></li>
<li><a href="#">节奏控</a></li>
<li><a href="#">官方歌单</a></li>
<li><a href="#">情歌</a></li>
</ul>
</div>
<div class="box1-ner">
<ul>
<li>
<img src="images/img1.jpg" />
<h1><a href="#">写作业洗脑英文【刷题BGM】</a></h1>
<h2>播放量:10.9万</h2>
</li>
<li>
<img src="images/img7.jpg" />
<h1><a href="#"> 华语流行 · 让心被快乐填满 </a></h1>
<h2>播放量:6.3万</h2>
</li>
<li>
<img src="images/img8.jpg" />
<h1><a href="#"> 请问住我心里的你,房租交了么? </a></h1>
<h2>播放量:2.5万</h2>
</li>
<li>
<img src="images/img9.jpg" />
<h1><a href="#"> 国产轻音:看书的时光要你陪伴 </a></h1>
<h2>播放量:36.2万</h2>
</li>
<li class="mar0">
<img src="images/img10.jpg" />
<h1><a href="#"> 运动歌曲|网球锻炼节奏感 </a></h1>
<h2>播放量:1.6万</h2>
</li>
</ul>
</div>

</div>
<div class="box2">
<div class="title">歌单推荐</div>
<div class="box2-ner">
<ul>
<li class="bg1">
<h1>巅峰榜</h1>
<h2><a href="#">热歌</a></h2>
<h3></h3>
<h4><a href="neirong02.html">1&nbsp;桥边姑娘</a></h4>
<h5><a href="neirong02.html">&nbsp;&nbsp;&nbsp;张茜</a></h5>
<h4><a href="neirong04.html">1&nbsp;世界这么大还是遇见你</a></h4>
<h5><a href="neirong04.html">&nbsp;&nbsp;&nbsp;程响</a></h5>
<h4><a href="neirong06.html">3&nbsp;武汉伢</a></h4>
<h5><a href="neirong06.html">&nbsp;&nbsp;&nbsp;陈戈 / 陈晶晶 / 陈思同</a></h5>
</li>
<li class="bg2">
<h1>巅峰榜</h1>
<h2><a href="#">新歌</a></h2>
<h3></h3>
<h4><a href="neirong04.html">1&nbsp;世界这么大还是遇见你</a></h4>
<h5><a href="neirong04.html">&nbsp;&nbsp;&nbsp;程响</a></h5>
<h4><a href="neirong05.html">2&nbsp;无期</a></h4>
<h5><a href="neirong05.html">&nbsp;&nbsp;&nbsp;光头华夏</a></h5>
<h4><a href="neirong06.html">3&nbsp;武汉伢</a></h4>
<h5><a href="neirong06.html">&nbsp;&nbsp;&nbsp;陈戈 / 陈晶晶 / 陈思同</a></h5>
</li>
<li class="bg3">
<h1>巅峰榜</h1>
<h2><a href="#">流行指数</a></h2>
<h3></h3>
<h4><a href="neirong02.html">1&nbsp;桥边姑娘 (Live)</a></h4>
<h5><a href="neirong02.html">&nbsp;&nbsp;&nbsp;张茜</a></h5>
<h4><a href="neirong01.html">2&nbsp;大眠 (温柔男声)</a></h4>
<h5><a href="neirong01.html">&nbsp;&nbsp;&nbsp;王茗</a></h5>
<h4><a href="neirong08.html">3&nbsp;竹石 (Live)</a></h4>
<h5><a href="neirong08.html">&nbsp;&nbsp;&nbsp;肖战</a></h5>
</li>
<li class="bg4">
<h1>巅峰榜</h1>
<h2><a href="#">欧美</a></h2>
<h3></h3>
<h4><a href="#">1&nbsp;Get Me</a></h4>
<h5><a href="#">&nbsp;&nbsp;&nbsp;Justin Bieber/Kehlani</a></h5>
<h4><a href="#">2&nbsp;Yummy</a></h4>
<h5><a href="#">&nbsp;&nbsp;&nbsp;Justin Bieber</a></h5>
<h4><a href="#">3&nbsp;Forever Yours (Avicii T</a></h4>
<h5><a href="#">&nbsp;&nbsp;&nbsp;Kygo/Avicii/Sandro C</a></h5>
</li>
<li class="bg5 mar0">
<h1>巅峰榜</h1>
<h2><a href="#">韩国</a></h2>
<h3></h3>
<h4><a href="#">1&nbsp;Go away go away</a></h4>
<h5><a href="#">&nbsp;&nbsp;&nbsp;灿烈 (찬열)/PUNCH (</a></h5>
<h4><a href="#">2&nbsp;자꾸 더 보고싶은 사람 </a></h4>
<h5><a href="#">&nbsp;&nbsp;&nbsp;MAMAMOO (마마무)</a></h5>

......

2.CSS

代码如下(节选示例):

body{ margin:0 auto; font-size:12px; font-family: "微软雅黑",arial; line-height:22px;  }
div,p,input,li,h1,h2,h3,h4,h5{ height:auto; margin:0; padding:0px;vertical-align:middle ;}
li{ list-style:none;}
a{ text-decoration:none; color:#000;}
img{ border:0; margin:0; padding:0;}
.top{ height:105px; width:1200px; margin:0 auto; }
.logo{ width:240px; height:80px; float:left; margin-top:20px;}
.nav{ width:550px; height:40px; margin-top:40px; float:right;}
.nav ul{ padding:0px; margin:0px;}
.nav ul li{ margin:0px 15px; float:left; height:40px; line-height:40px;}
.nav ul li a{ line-height:40px; font-size:18px;}
.box {
    width:1200px;
    height:600px;
    margin:0 auto;    
        }
        .inner{
    width:1200px;
    height:600px;
    position: relative;
    overflow: hidden;
        }
        .inner img{
    width:1200px;
    height:600px;
    vertical-align: top
        }
        .inner ul {
            width: 1000%;
            position: absolute;
            list-style: none;
            left:0;
            top: 0;
        margin:0px;
        padding:0px;
        }
        .inner li{
            float: left;
 
        }
 
        ol {
    position: absolute;
    height: 20px;
    right: 20px;
    bottom: 12px;
    text-align: center;
    padding: 5px;
        }
        ol li{
    display: block;
    width: 20px;
    height: 20px;
    line-height: 20px;
    background-color: #fff;
    margin: 5px;
    cursor: pointer; 
        }
        ol .current{
            background-color: red;
        }
        #arr{
    display: block;
        }
        #arr span{
    width: 30px;
    height: 40px;
    position: absolute;
    left: 14px;
    top: 300px;
    margin-top: -20px;
    background: #fff;
    cursor: pointer;
    line-height: 40px;
    text-align: center;
    font-weight: bold;
    font-family: '黑体';
    font-size: 30px;
    color: #000;
    opacity: 0.5;
    border: 1px solid #fff;
        }
        #arr #right {
    right: 18px;
    left: auto;
        }
.box1{ height:440px; width:1200px; margin:0 auto;}
.title{ height:60px; margin-top:20px; line-height:60px; font-size:24px; text-align:center; font-weight:bold;}
.tit{ width:640px; height:40px; margin:0 auto;}
.tit ul{ margin:0px; padding:0px;}
.tit ul li { float:left; margin:0px 25px; line-height:40px;}
.tit ul li  a{ font-size:16px;}
.box1-ner{ width:1200px; height:300px;}
.box1-ner ul{ padding:0px;}
.box1-ner ul li{ width:224px; height:300px; float:left; margin-right:20px;}
.mar0{ margin-right:0px !important;}
.box1-ner ul li img{ width:224px; height:224px; margin-bottom:15px;}
.box1-ner ul li h1{ height:25px; line-height:25px; font-size:14px; font-weight:normal;}
.box1-ner ul li h1 a{ color:#000;}
.box1-ner ul li h2{ height:25px; line-height:25px; font-size:14px; font-weight:normal; color:#b3afaf;}
.box2{ height:640px; width:1200px; margin:0 auto;}
.box2-ner{ height:500px;}
.box2-ner ul{ padding:0px;}
.box2-ner ul li{ width:224px; height:500px; float:left; margin-right:20px;}
.box2-ner ul li h1{ height:40px; line-height:40px; margin-top:40px; text-align:center; font-size:18px; font-weight:normal;color:#FFF;}
.box2-ner ul li h2{ height:40px; line-height:40px;  text-align:center; font-size:22px;}
.box2-ner ul li h2 a{ color:#FFF;}
.box2-ner ul li h3{ display:block; width:40px; height:30px; margin:0 auto; border-bottom:#FFF 2px solid; margin-bottom:20px;}
.box2-ner ul li h4{ height:30px; line-height:30px; padding-left:30px; font-size:14px; font-weight:normal;}
.box2-ner ul li h4 a{ color:#FFF;}
.box2-ner ul li h5{ height:30px; line-height:30px; padding-left:30px; font-size:14px; font-weight:normal; margin-bottom:20px;}
.box2-ner ul li h5 a{ color:#FFF;}
.bg1{ background:url(../images/img2.jpg) no-repeat;}
.bg2{ background:url(../images/img3.jpg) no-repeat;}
......

3.JS

代码如下(节选示例):

 /**
     *
     * @param id  传入元素的id
     * @returns {HTMLElement | null}  返回标签对象,方便获取元素
     */
    function my$(id) {
        return document.getElementById(id);
    }
 
    //获取各元素,方便操作
    var box=my$("box");
    var inner=box.children[0];
    var ulObj=inner.children[0];
    var list=ulObj.children;
    var olObj=inner.children[1];
    var arr=my$("arr");
    var imgWidth=inner.offsetWidth;
    var right=my$("right");
    var pic=0;
    //根据li个数,创建小按钮
    for(var i=0;i<list.length;i++){
        var liObj=document.createElement("li");
 
        olObj.appendChild(liObj);
        liObj.innerText=(i+1);
        liObj.setAttribute("index",i);
 
        //为按钮注册mouseover事件
        liObj.onmouseover=function () {
            //先清除所有按钮的样式
 
            for (var j=0;j<olObj.children.length;j++){
                olObj.children[j].removeAttribute("class");
            }
            this.className="current";
            pic=this.getAttribute("index");
            animate(ulObj,-pic*imgWidth);
        }
 
    }
 
 
    //设置ol中第一个li有背景颜色
    olObj.children[0].className = "current";
    //克隆一个ul中第一个li,加入到ul中的最后=====克隆
    ulObj.appendChild(ulObj.children[0].cloneNode(true));
 
    var timeId=setInterval(onmouseclickHandle,2000);
    //左右焦点实现点击切换图片功能
    box.onmouseover=function () {
        arr.style.display="block";
        clearInterval(timeId);
    };
    box.onmouseout=function () {
        arr.style.display="none";
        timeId=setInterval(onmouseclickHandle,2000);
    };
 
    right.onclick=onmouseclickHandle;
    function onmouseclickHandle() {
        //如果pic的值是5,恰巧是ul中li的个数-1的值,此时页面显示第六个图片,而用户会认为这是第一个图,
        //所以,如果用户再次点击按钮,用户应该看到第二个图片
        if (pic == list.length - 1) {
            //如何从第6个图,跳转到第一个图
            pic = 0;//先设置pic=0
            ulObj.style.left = 0 + "px";//把ul的位置还原成开始的默认位置
        }
        pic++;//立刻设置pic加1,那么此时用户就会看到第二个图片了
        animate(ulObj, -pic * imgWidth);//pic从0的值加1之后,pic的值是1,然后ul移动出去一个图片
        //如果pic==5说明,此时显示第6个图(内容是第一张图片),第一个小按钮有颜色,
        if (pic == list.length - 1) {
            //第五个按钮颜色干掉
            olObj.children[olObj.children.length - 1].className = "";
            //第一个按钮颜色设置上
            olObj.children[0].className = "current";
        } else {
            //干掉所有的小按钮的背景颜色
            for (var i = 0; i < olObj.children.length; i++) {
                olObj.children[i].removeAttribute("class");
            }
            olObj.children[pic].className = "current";
        }
    }
    left.onclick=function () {
        if (pic==0){
            pic=list.length-1;
            ulObj.style.left=-pic*imgWidth+"px";
        }
        pic--;
        animate(ulObj,-pic*imgWidth);
        for (var i = 0; i < olObj.children.length; i++) {
            olObj.children[i].removeAttribute("class");
        }
        //当前的pic索引对应的按钮设置颜色
        olObj.children[pic].className = "current";
    };

......


四、总结

 1. 页面分为页头、菜单导航栏(最好可下拉)、中间内容板块、页脚四大部分;
  2. 所有页面相互超链接,可到二级或三级页面,有5-10个页面组成;
  3. 页面样式风格统一布局显示正常,不错乱,使用HTML5+CSS3+JS技术;
  4. 菜单美观、醒目,二级菜单可正常弹出与跳转;
  5. 要有JS特效,如定时切换和手动切换图片新闻;
  6. 页面中有多媒体元素,如gif、视频、音乐,表单技术的使用;
  7. 页面清爽、美观、大方,不雷同。  
  8. 网站前端程序不仅要能够把用户要求的内容呈现,还要满足布局良好、界面美观、配色优雅、表现形式多样等要求。


五、交流分享

1.【关注作者|获取更多源码(2000+个网页源码)|优质文章】;
  2. 您的支持是我创作的动力!看到这里就【点赞收藏博文】,三连支持下吧,3Q!关注我带您学习各种前端插件、整站模板、3D炫酷效果、图片展示、文字效果、大学生毕业HTML、期末大作业模板案例等; 更多优质博客文章、网页模板点击以下链接查阅:仙女网页设计-CSDN博客


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

仙女网页制作

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值