前端web

题目:制作带有下拉悬停菜单的导航栏

效果图

一、先制作菜单栏

<body>

<div id="menu">

<div id="container">

<div class="item">游戏1

<div class="down_menu">

<div>游戏下载</div>

<div>游戏社交</div>

<div>游戏论坛</div>

<div>游戏bug</div>

</div>

</div>

<div class="item">游戏2

<div class="down_menu">

<div>游戏下载</div>

<div>游戏社交</div>

<div>游戏bug</div>

<div>游戏论坛</div>

</div>

</div>

<div class="item">游戏3

<div class="down_menu">

<div>游戏下载</div>

<div>游戏交易</div>

<div>游戏外挂</div>

<div>游戏攻略</div>

</div>

</div>

<div class="item">游戏4</div>

<div class="item">游戏5</div>

<div class="item">游戏6</div>

<div class="item">游戏7</div>

</div>

</div>

二、使用浮动属性让块标签处在同一列

.item {

float: left;

width: 100px;

height: 50px;

line-height: 50px;

text-align: center;------字体置中

color: antiquewhite;------字体颜色

position: relative;

}

三、设置菜单栏底色并置顶

* {

margin: 0;

padding: 0;

}

#menu {

background-color: aqua;

width: 100%;

height: 50px;

}

.item:hover {

background-color: royalblue;------当鼠标悬浮时选项的底色变换

}

#container {

width: 720px;

margin: auto;------使菜单处于中间

四、悬浮框的设置

.down_menu>div {

color: black;------悬浮框里的字体颜色

}

.down_menu {

background-color: #cccccc;------悬浮框的底色

display: none;

position: absolute;

}

.item:hover>.down_menu {

display: block;------------------------悬浮框的大小设置

width: 100px;

left: 0px;

top: 50px;

}

五、完整代码

cs 复制代码
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style>
			* {
				margin: 0;
				padding: 0;
				/* border: 1px solid red; */
			}
		
			#menu {
				background-color: aqua;
				width: 100%;
				height: 50px;
			}
		
			.item {
				/* 浮动属性可以让块标签,处在同一行 */
				float: left;
				width: 100px;
				height: 50px;
				line-height: 50px;
				/* border: 1px solid red; */
				text-align: center;
				color: antiquewhite;
				position: relative;
			}
		
			.item:hover {
				background-color: royalblue;
			}
		
			#container {
				width: 720px;
				margin: auto;
			}
		
			.down_menu>div {
				color: black;
			}
			
			.down_menu {
				background-color: #cccccc;
				display: none;
				position: absolute;
			}
			
			.item:hover>.down_menu {
				display: block;
				width: 100px;
				left: 0px;
				top: 50px;
			}
		</style>
	</head>
	<body>
		<div id="menu">
			<div id="container">
				<div class="item">游戏1
					<div class="down_menu">
						<div>游戏下载</div>
						<div>游戏社交</div>
						<div>游戏论坛</div>
						<div>游戏bug</div>
					</div>
					<!-- <div style="width: 100px;height: 100px;background-color: black;"></div> -->
				</div>
				<div class="item">游戏2
					<div class="down_menu">
						<div>游戏下载</div>
						<div>游戏社交</div>
						<div>游戏bug</div>
						<div>游戏论坛</div>
					</div>
				</div>
				<div class="item">游戏3
					<div class="down_menu">
						<div>游戏下载</div>
						<div>游戏交易</div>
						<div>游戏外挂</div>
						<div>游戏攻略</div>
					</div>
				</div>
				<div class="item">游戏4</div>
				<div class="item">游戏5</div>
				<div class="item">游戏6</div>
				<div class="item">游戏7</div>
			</div>
		</div>
	</body>
</html>

效果图

相关推荐
我命由我1234513 分钟前
微信小程序 - 自定义实现分页功能
前端·微信小程序·小程序·前端框架·html·html5·js
程序员黄同学1 小时前
请谈谈 Vue 中的 key 属性的重要性,如何确保列表项的唯一标识?
前端·javascript·vue.js
繁依Fanyi1 小时前
巧妙实现右键菜单功能,提升用户操作体验
开发语言·前端·javascript·vue.js·uni-app·harmonyos
前端御书房1 小时前
前端防重复请求终极方案:从Loading地狱到精准拦截的架构升级
前端·javascript
web182854825121 小时前
nginx 部署前端vue项目
前端·vue.js·nginx
zy0101011 小时前
HTML标签
前端·css·html
程序员黄同学1 小时前
解释 Vue 中的虚拟 DOM,如何通过 Diff 算法最小化真实 DOM 更新次数?
开发语言·前端·javascript
蓝谷芮济2 小时前
二:前端发送POST请求,后端获取数据
前端
果粒chenl2 小时前
css+js提问
前端·javascript·css
memorycx2 小时前
Vue02
前端·javascript·vue.js