【练习实例】HTML+CSS制作导航栏(横向与纵向)

纵向导航栏

  1. 建立一个列表
<ul>
			<li><a href="#home" class="active">主页</a></li>
			<li><a href="#news">新闻</a></li>
			<li><a href="#contact">联系</a></li>
			<li><a href="#about">关于</a></li>
		</ul>

在这里插入图片描述
2. 定义列表基本样式

ul{
				/*去掉列表的样式*/
				list-style-type: none; 
				width: 200px;
				background-color: #DDDDDD;
			}
li a{
				/*将<a>内联元素转换为块级元素,便于padding设定*/
				display: block;  
				/*去掉链接默认样式*/
				text-decoration: none;
				color: #000000;
				padding: 8px 16px;
			}

在这里插入图片描述

  1. 定义鼠标移动到导航栏上后的样式
li a:hover{
				background-color: #555;
				color: white;
			}

在这里插入图片描述

  1. 定义默认选中样式
li a.active {
			    background-color: #333333;
			    color: white;
			}

在这里插入图片描述

  1. 若想实现全左侧固定导航栏
ul{
				/*定位:使导航栏跟随滚动条滚动*/
				position: fixed;
				list-style-type: none;
				width: 15%;
				height: 100%;
				background-color: #DDDDDD;
			}

横向导航栏

  1. 同样建立列表
<ul>
			<li><a href="#home" class="active">主页</a></li>
			<li><a href="#news">新闻</a></li>
			<li><a href="#contact">联系</a></li>
			<li class="right"><a href="#about" >关于</a></li>
		</ul>

在这里插入图片描述

  1. 定义列表基本样式

				ul{
				background-color: #333333;
				list-style-type: none;
				overflow: hidden;
			}
			
			li{
				/*display与float两种方式使列表转为横向*/
				/* display: inline; */
				float: left;
				
			}
			
			li a{
				display:block ;
				color: #FFFFFF;
				text-decoration: none;
				text-align: center;
				padding: 14px 16px;
			}

在这里插入图片描述

  1. 定义鼠标移动到导航栏上后的样式
li a:hover{
				background-color:#000000 ;
				color: #999999;
			}

在这里插入图片描述

  1. 定义默认选中样式
.active{
				background-color: #555;
			}

在这里插入图片描述

写在最后

还有一种响应式导航栏,可以根据窗口大小改变导航栏的样式。
想要实现响应式需要运用@media screen,有兴趣的可以继续拓展!

  • 53
    点赞
  • 464
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
以下是一个简单的HTMLCSS、JavaScript时间轴示例: HTML代码: ```html <!DOCTYPE html> <html> <head> <title>Time Line Example</title> <link rel="stylesheet" type="text/css" href="style.css"> </head> <body> <ul class="timeline"></ul> <script src="script.js"></script> </body> </html> ``` CSS代码: ```css body { margin: 0; padding: 0; font-family: Arial, Helvetica, sans-serif; } .timeline { list-style-type: none; display: flex; flex-direction: column; padding: 0; } .timeline li { position: relative; width: 100%; padding: 20px; box-sizing: border-box; display: flex; align-items: center; } .timeline li:nth-child(odd) { background-color: #f2f2f2; } .timeline li:nth-child(even) { background-color: #e6e6e6; } .timeline li::before { content: ""; position: absolute; top: 0; left: 50%; width: 2px; height: 100%; background-color: #ccc; transform: translateX(-50%); } .timeline li:last-child::before { height: 0; } .timeline li h2 { margin: 0; font-size: 24px; font-weight: bold; } .timeline li p { margin: 0; font-size: 16px; } .timeline li .date { position: absolute; top: 0; left: 50%; transform: translateX(-50%); background-color: #ccc; color: #fff; padding: 5px 10px; font-size: 14px; border-radius: 5px; } .timeline li .content { margin-left: 50px; } ``` JavaScript代码: ```javascript // 时间轴数据 var timelineData = [ { date: "2021-01-01", title: "Event 1", content: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam vel tristique nibh. Sed volutpat urna eget tellus molestie, et eleifend nulla laoreet. Integer non metus sit amet felis bibendum consectetur. ", }, { date: "2021-03-15", title: "Event 2", content: "Curabitur sed tortor vitae sapien sodales feugiat at vel ex. Phasellus vel nisi id nulla volutpat bibendum. Donec interdum finibus tellus, vel pellentesque sapien consectetur et. ", }, { date: "2021-06-30", title: "Event 3", content: "Pellentesque rutrum lacus eget suscipit pretium. Nullam eleifend enim nec tellus pharetra, quis blandit neque aliquet. Aenean eu dui a libero dapibus ultricies. ", }, { date: "2021-09-22", title: "Event 4", content: "Integer sollicitudin velit quis nunc pulvinar, ut maximus orci bibendum. Proin congue tellus sed enim rhoncus, vel molestie nisl bibendum. Nullam hendrerit felis ut dui bibendum, eu ultricies dolor consequat. ", } ]; // 添加时间轴事件 var timeline = document.querySelector(".timeline"); for (var i = 0; i < timelineData.length; i++) { var eventData = timelineData[i]; var date = eventData.date; var title = eventData.title; var content = eventData.content; var li = document.createElement("li"); li.innerHTML = ` <div class="date">${date}</div> <div class="content"> <h2>${title}</h2> <p>${content}</p> </div> `; timeline.appendChild(li); } ``` 以上代码实现了一个简单的时间轴,包括了HTMLCSS和JavaScript代码。你可以将以上代码复制到对应的文件中,然后通过浏览器打开HTML文件来查看时间轴效果

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值