鼠标悬停制作导航栏

效果图

效果为 鼠标悬停时, 文字增加背景色同时更改文字颜色

html页面

在hbuilder中任意创建一个文件,例如 demo.html

本效果需要使用到 css 中的 float 及 伪类样式

在 CSS 中,float 属性用于指定元素相对于父元素的左右浮动方向。当元素设为 float 后,元素将会脱离文档标准流(normal flow),并根据指定的浮动方向,尽可能地靠左或靠右排列。

常见的 float 属性取值有 left、right 和 none。left 表示元素浮动到左侧,right 表示元素浮动到右侧, none 表示取消浮动或恢复浮动之前的默认设置。

在进行 float 设计时,需要特别注意以下几点:

1.浮动元素会对后面几个元素的布局产生影响,因此需要注意设置好清除浮动。

2.不建议将浮动元素用于布局,因为浮动元素不能撑开父容器,会产生一些布局问题,建议使用 flexbox、grid 等布局方式。

3.在设置浮动属性时,需要结合其他属性一起使用,如清除浮动等。

代码如下:

<body>
	
		<div>
			<ul>
				<li>新闻</li>
				<li>新闻1</li>
				<li>新闻2</li>
				<li>新闻3</li>
				<li>新闻4</li>
				<li>新闻5</li>
				<li>新闻6</li>
			</ul>
			
		</div>
		
	</body>

此页面直接运行效果如下:

但 此页面距离效果图 还有一定的差距, 因此需要使用css 来进行美化

css代码

在当前demo.html 中 增加 <style></style>标签

<style>
		
		 ul{
			 overflow: hidden;
		 }
		 li{
			 float: left;
			 list-style: none;
			 line-height: 35px; /* 设置行高 ,*/
			 width: 60px; /* 增加宽度*/
			 text-align: center;/* 文本水平居中对齐 */
		 }
		
		li:hover{
			color: #00FF00;
			background-color: #696969;
		}
		
		</style>

 再次运行

这里需要强调下:

当li进行浮动时, 他的父容器即ul 必须设置 overflow:hidden, 撑开盒子的高度

在 CSS 中,overflow:hidden 属性用于控制元素的溢出部分如何处理,将其设为 hidden 时,超出元素所在框的部分将被隐藏,从而保证不会影响页面布局。

常见的应用场景有以下几个:

1.清除浮动:将父元素使用 overflow:hidden 属性包裹住所有浮动的子元素,可以清除浮动所导致的高度塌陷问题。

2.隐藏溢出文本:当一个元素设定了固定的宽度,但文本内容过多时导致溢出,此时设置 overflow:hidden 属性,可以实现隐藏溢出文本的效果。

3.图片裁剪:当图片显示过大时,也可以使用 overflow:hidden 属性来实现图片的裁剪效果。

需要注意的是,使用 overflow:hidden 属性可能会隐藏超出元素所在框的部分内容,因此需要根据实际需求合理使用该属性,并避免出现元素内容被截断的情况。

  • 11
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
好的,我可以为您提供一些HTML和CSS代码片段来实现您的要求。首先,让我们来创建一个基本的HTML文件框架: ```html <!DOCTYPE html> <html> <head> <title>My Photo Gallery</title> <link rel="stylesheet" type="text/css" href="style.css"> </head> <body> <header> <h1>My Photo Gallery</h1> <nav> <ul> <li><a href="#">Home</a></li> <li><a href="#">Gallery</a> <ul> <li><a href="#">Nature</a></li> <li><a href="#">City</a></li> <li><a href="#">People</a></li> </ul> </li> <li><a href="#">About</a></li> <li><a href="#">Contact</a></li> </ul> </nav> </header> <main> <!-- Your photo gallery goes here --> </main> <footer> <p>© 2021 My Photo Gallery</p> </footer> </body> </html> ``` 在上面的代码中,我们创建了一个基本的HTML页面,包括一个标题和一个导航栏。现在我们需要添加CSS样式来实现特殊背景和导航栏悬停下拉菜单的效果。请查看以下代码: ```css body { background-color: #F8F8F8; font-family: Arial, sans-serif; margin: 0; padding: 0; } header { background-color: #333; color: #FFF; padding: 20px; } nav ul { margin: 0; padding: 0; list-style: none; } nav ul li { display: inline-block; position: relative; } nav ul li a { color: #FFF; display: block; padding: 10px 15px; text-decoration: none; } nav ul li:hover > ul { display: block; } nav ul ul { display: none; position: absolute; top: 100%; left: 0; background-color: #333; padding: 0; } nav ul ul li { display: block; float: none; } nav ul ul li a { padding: 10px 15px; color: #FFF; } nav ul li.flip { position: relative; overflow: hidden; } nav ul li.flip img { position: absolute; top: 0; left: 0; transition: transform 0.5s ease; } nav ul li.flip:hover img { transform: rotateY(180deg); } footer { background-color: #333; color: #FFF; text-align: center; padding: 10px; } ``` 在上面的代码中,我们设置了特殊的背景颜色,并为导航栏和下拉菜单添加了样式。我们还添加了一个特殊的样式来实现导航栏图像翻转和子画面的按钮效果。现在,您可以将您的照片库添加到主要部分中,并将其样式化,使其看起来更好。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

射手座的程序媛

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

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

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

打赏作者

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

抵扣说明:

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

余额充值