web前端学习(二十八)——CSS3下拉菜单的相关设置

1.开篇

HTML 部分:

我们可以使用任何的 HTML 元素来打开下拉菜单,如:<span>, 或 a <button> 元素。

使用容器元素 (如: <div>) 来创建下拉菜单的内容,并放在任何你想放的位置上。

使用 <div> 元素来包裹这些元素,并使用 CSS 来设置下拉内容的样式。

CSS 部分:

.dropdown 类使用 position:relative, 这将设置下拉菜单的内容放置在下拉按钮 (使用 position:absolute) 的右下角位置。

.dropdown-content 类中是实际的下拉菜单。默认是隐藏的,在鼠标移动到指定元素后会显示。 注意 min-width 的值设置为 160px。你可以随意修改它。 注意: 如果你想设置下拉内容与下拉按钮的宽度一致,可设置 width 为 100% ( overflow:auto 设置可以在小尺寸屏幕上滚动)。

我们使用 box-shadow 属性让下拉菜单看起来像一个"卡片"。

:hover 选择器用于在用户将鼠标移动到下拉按钮上时显示下拉菜单。

如果你想设置右浮动的下拉菜单内容方向是从右到左,而不是从左到右,可以添加以下代码 right: 0;(left:0;)


2.基本下拉菜单 

<!DOCTYPE html>
<html lang="en">
	<head>
		<meta charset="utf-8" />
		<title>CSS简单学习</title>
		<style type="text/css">
			.dropdown {
				position: relative;
				display: inline-block;
			}
			.dropdown-content {
				position: absolute;
				display: none;
				min-width: 160px;
				padding: 12px 16px;
				box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
				background-color: beige;
			}
			.dropdown:hover .dropdown-content {
				display: block;
			}
		</style>
	</head>
	
	<body>
		<h2>鼠标移动后出现下拉菜单</h2>
		<p>将鼠标移动到指定元素上就能看到下拉菜单</p>
		<div class="dropdown">
			<span>鼠标移动到我这里!!!</span>
			<div class="dropdown-content">
				<p>HTML</p>
				<p>CSS</p>
				<p>JavaScript</p>
			</div>
		</div>
	</body>
</html>


3.完善的下拉菜单

<!DOCTYPE html>
<html lang="en">
	<head>
		<meta charset="utf-8" />
		<title>CSS简单学习</title>
		<style type="text/css">
			/* 下拉按钮的样式 */
			.dropbtn {
				border: none;
				cursor: pointer;
				padding: 16px;
				font-size: 16px;
				background-color: green;
			}
			/* 容器<div>需要定位下拉内容 */
			.dropdown {
				position: relative;
				display: inline-block;
			}
			/* 下拉内容(默认隐藏) */
			.dropdown-content {
				position: absolute;
				display: none;
				min-width: 160px;
				box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
				background-color: whitesmoke;
			}
			/* 下拉菜单的链接 */
			.dropdown-content a {
				display: block;
				padding: 12px 16px;
				text-decoration: none;
				color: black;
			}
			/* 鼠标移到链接上之后,修改连接的背景颜色 */
			.dropdown-content a:hover {
				background-color: antiquewhite;
			}
			/* 鼠标移动到下拉按钮上之后,显示下拉菜单 */
			.dropdown:hover .dropdown-content {
				display: block;
			}
			/* 当下拉菜单显示之后,修改下拉按钮的背景颜色 */
			.dropdown:hover .dropbtn {
				background-color: darkgreen;
			}
		</style>
	</head>
	
	<body>
		<div class="dropdown">
			<button class="dropbtn">下拉菜单</button>
			<div class="dropdown-content">
				<a href="https://www.tencent.com" target="_blank">腾讯</a>
				<a href="https://www.1688.com" target="_blank">阿里巴巴</a>
				<a href="https://www.huawei.com" target="_blank">华为</a>
			</div>
		</div>
	</body>
</html>


4.下拉菜单的对齐方式

<!DOCTYPE html>
<html lang="en">
	<head>
		<meta charset="utf-8" />
		<title>CSS简单学习</title>
		<style type="text/css">
			/* 下拉按钮的样式 */
			.dropbtn {
				border: none;
				cursor: pointer;
				padding: 16px;
				font-size: 16px;
				background-color: green;
			}
			/* 容器<div>需要定位下拉内容 */
			.dropdown {
				position: relative;
				display: inline-block;
			}
			/* 下拉内容(默认隐藏) */
			.dropdown-content {
				position: absolute;
				display: none;
				min-width: 160px;
				box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
				right: 0;
				background-color: whitesmoke;
			}
			/* 下拉菜单的链接 */
			.dropdown-content a {
				display: block;
				padding: 12px 16px;
				text-decoration: none;
				color: black;
			}
			/* 鼠标移到链接上之后,修改连接的背景颜色 */
			.dropdown-content a:hover {
				background-color: antiquewhite;
			}
			/* 鼠标移动到下拉按钮上之后,显示下拉菜单 */
			.dropdown:hover .dropdown-content {
				display: block;
			}
			/* 当下拉菜单显示之后,修改下拉按钮的背景颜色 */
			.dropdown:hover .dropbtn {
				background-color: darkgreen;
			}
		</style>
	</head>
	
	<body>
		<h2>下拉内容的对齐方式</h2>
		<p>left 和 right 属性指定了下拉内容是从左到右或从右到左。</p>
		
		<div class="dropdown" style="float: left;">
			<button class="dropbtn">下拉菜单(左)</button>
			<div class="dropdown-content">
				<a href="https://www.tencent.com" target="_blank">腾讯</a>
				<a href="https://www.1688.com" target="_blank">阿里巴巴</a>
				<a href="https://www.huawei.com" target="_blank">华为</a>
			</div>
		</div>
		
		<div class="dropdown" style="float: right;">
			<button class="dropbtn">下拉菜单(右)</button>
			<div class="dropdown-content">
				<a href="https://www.tencent.com" target="_blank">腾讯</a>
				<a href="https://www.1688.com" target="_blank">阿里巴巴</a>
				<a href="https://www.huawei.com" target="_blank">华为</a>
			</div>
		</div>
	</body>
</html>


5.下拉菜单应用于图片

<!DOCTYPE html>
<html lang="en">
	<head>
		<meta charset="utf-8" />
		<title>CSS简单学习</title>
		<style type="text/css">
			.dropdown {
				position: relative;
				display: inline-block;
			}
			.dropdown-content {
				position: absolute;
				display: none;
				min-width: 160px;
				box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
				background-color: whitesmoke;
			}
			.dropdown:hover .dropdown-content {
				display: block;
			}
			.desc {
				padding: 15px;
				text-align: center;
			}
		</style>
	</head>
	
	<body>
		<h2>下拉图片</h2>
		<p>移动鼠标到图片上显示下拉内容。</p>
		<div class="dropdown">
			<img src="img/images/tx.jpg" alt="表情图" width="110" height="110" />
			<div class="dropdown-content">
				<img src="img/images/tx.jpg" alt="表情图" width="330" height="330" />
				<div class="desc">
					<p>表情图在这里被放大了!!!</p>
				</div>
			</div>
		</div>
	</body>
</html>


6.下拉菜单应用于导航栏

<!DOCTYPE html>
<html lang="en">
	<head>
		<meta charset="utf-8" />
		<title>CSS简单学习</title>
		<style type="text/css">
			ul {
				list-style-type: none;
				margin: 0;
				padding: 0;
				overflow: hidden;
				background-color: dimgray;
			}
			li {
				float: left;
			}
			li a, .dropbtn {
				display: inline-block;
				padding: 14px 16px;
				text-align: center;
				text-decoration: none;
				color: white;
			}
			li a:hover, .dropdown:hover, .dropbtn {
				background-color: black;
			}
			.dropdown {
				display: inline-block;
			}
			.dropdown-content {
				position: absolute;
				display: none;
				min-width: 160px;
				box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
				background-color: ghostwhite;
			}
			.dropdown-content a {
				display: block;
				padding: 12px 16px;
				text-decoration: none;
				color: black;
			}
			.dropdown-content a:hover {
				background-color: antiquewhite;
			}
			.dropdown:hover .dropdown-content {
				display: block;
			}
		</style>
	</head>
	
	<body>
		<ul>
			<li><a href="#home">主页</a></li>
			<li><a href="#news">新闻</a></li>
			<div class="dropdown">
				<a href="#link" class="dropbtn">相关链接</a>
				<div class="dropdown-content">
					<a href="https://www.tencent.com" target="_blank">腾讯</a>
					<a href="https://www.1688.com" target="_blank">阿里巴巴</a>
					<a href="https://www.huawei.com" target="_blank">华为</a>
				</div>
			</div>
		</ul>
		<h3>导航栏上的下拉菜单</h3>
		<p>鼠标移动到 "相关链接" 上,会显示下拉菜单。</p>
	</body>
</html>

Web开发中,我们可以使用列表(或称之为ul或ol)来制作下拉菜单下拉菜单是一种常见的用户界面元素,它允许用户从预定义的选项中选择一个或多个选项。 为了创建一个下拉菜单,我们首先需要使用HTML中的<select>元素来创建一个下拉列表框。在<select>元素中,我们可以使用<option>元素来定义每个选项。每个<option>元素的文本内容就是菜单中显示的文本,而其value属性则是在用户选择该选项时所传递的值。 下面是一个简单的示例代码,用于创建一个包含三个选项的下拉菜单: <select> <option value="option1">选项1</option> <option value="option2">选项2</option> <option value="option3">选项3</option> </select> 在CSS中,我们可以使用一些属性来定义下拉菜单的样式,例如通过设置width属性来指定菜单的宽度,设置background-color属性来定义背景颜色,设置color属性来定义文本颜色等。 如果需要在菜单中显示图标或者自定义样式,我们可以将CSS类应用于<option>元素,并通过CSS样式规则对其进行修饰。 通过JavaScript,我们还可以实现一些更高级的功能,例如动态添加选项、根据用户选择进行相关操作等。 总的来说,通过使用HTML中的<select>和<option>元素,结合CSS和JavaScript的功能,可以很方便地制作出漂亮、功能强大的下拉菜单。这些下拉菜单可以用于各种Web应用程序,提供友好的用户交互体验。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

★★光亭★★

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

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

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

打赏作者

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

抵扣说明:

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

余额充值