第一阶段:CSS初步探讨

关于float和clear元素的初步认识

1、css鼠标悬浮显示不同内容

html代码:
<div class="showRed">显示红盒</div>
	<div class="showBlue">显示蓝盒</div>
	<div class="box1"></div>
	<div class="box2"></div>
css代码:
box1, .box2{
		height: 150px;
		width: 150px;
		display: none;
	}
	.box1{
		float: left;
		background-color: red;
	}
	.box2{
		background-color: blue;
	}
	.showRed:hover{
		cursor: pointer;
		background-color: red;
	}
	.showRed:hover ~ .box1{
		/*使用兄弟选择器 */
		display: block;

	}
	.showBlue:hover{
		cursor: pointer;
		background-color: blue;
	}
	 .showBlue:hover ~ .box2{  
	 	/*使用兄弟选择器 */
		display: block;
		}
效果图:

省略。。。

2、二级菜单

1、二级菜单一:使用::after

html代码:
		<ul>
			<!-- 一级导航 -->
			<li>
				<p>JavaEE</p>
				<!-- 二级导航 -->
				<ul>
					<li>CoreJava</li>
					<li>Linux</li>
					<li>XML</li>
					<li>Oracle</li>
				</ul>
			</li>
			<!-- 一级导航 -->
			<li>
				<p>WebUI</p>
				<ul>
					<li>Html</li>
					<li>CSS</li>
					<li>Javascript</li>
				</ul>
			</li>
			<!-- 一级导航 -->
			<li>
				<p>IOT</p>
			</li>
		</ul>
	</div>
	<!-- 导航结束 -->
css代码:
		/*重置*/
		body,ul ,p{
			margin: 0;
		}
		ul {
			padding: 0;
			list-style: none;
		}
		/*导航*/
		.nav {
			background:#333;
			color: #ededed;
		}
		.nav > ul::after {
			content: "";
			display: block;
			clear: both;
		}
		.nav li {
			line-height: 3em;
		}
		.nav > ul  > li {
			float: left;
			width: 100px;
			text-align: center;
			position: relative;
		}
		.nav > ul > li:hover {
			background-color: #ededed;
			color: #333;
		}
		/* 二级导航容器 */
		.nav > ul > li > ul {
			display: none;
			position: absolute;
			background-color: #ededed;
			color: #333;
			width: 100%;
		}

		.nav > ul > li:hover > ul  {
			display: block;
		}
	
	</style>

2、不使用,给nav设置一个固定高度

html代码
<p>给nav设置一个高度的二级导航菜单</p>
	<div class="nav">
		<ul>
			<li>Java
				<ul>
					<li>coreJava</li>
					<li>linux</li>
					<li>XML</li>
				</ul>
			</li>
			<li>WebUI
				<ul>
					<li>html</li>
					<li>css</li>
					<li>javascript</li>
				</ul>
			</li>
			<li>BigData</li>
		</ul>
	</div>

css代码
body,ul{
		margin: 0;
	}
	ul{
		padding: 0;
		list-style: none;
	}
	.nav{
		background-color: #888;
		height: 32px;
		/*给nav加一个固定高度*/
		color: lightblue;

	}
	.nav  ul li{
		float: left;
		width: 100px;
		text-align: center;
		position: relative;
		z-index: 999;
	}
	.nav li{
		line-height: 2em;
	}
	.nav>ul>li>ul{
		display: none;
		background-color: #333;
		position: absolute;
	}
	.nav >ul >li:hover{
		background-color: #333;
	}
	.nav >ul>li:hover>ul{
		display: block;
		/* position: absolute; */
	}

3、完整练习

代码:
<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">
	<meta http-equiv="X-UA-Compatible" content="IE=edge">
	<title>选择器</title>
	<link rel="stylesheet" href="">
	<style type="text/css" media="screen">
	body,ul{
		margin: 0;
	}
	ul{
		padding: 0;
		list-style: none;
	}
	.nav{
		background-color: #888;
		height: 32px;
		/*给nav加一个固定高度*/
		color: lightblue;

	}
	.nav  ul li{
		float: left;
		width: 100px;
		text-align: center;
		position: relative;
		z-index: 999;
	}
	.nav li{
		line-height: 2em;
	}
	.nav>ul>li>ul{
		display: none;
		background-color: #333;
		position: absolute;
	}
	.nav >ul >li:hover{
		background-color: #333;
	}
	.nav >ul>li:hover>ul{
		display: block;
		/* position: absolute; */
	}



	/* 使用伪元素实现二级菜单 */
	.head{
		background-color: green;
		color: gray;
	}
	.head ul{
		margin: 0;
		padding: 0;
		list-style: none;
	}
	.head li{
		line-height: 3em;
	}
	.head>ul>li{
		float: left;
		position: relative;
		width: 100px;
		text-align: center;
	}
	.head>ul::after{
		content: "";
		display: block;
		clear: both;
	}
	.head>ul>li:hover{
		background-color: #ccc;
	}
	.head>ul>li:hover>ul{
		display: block;
	}
	.head>ul>li>ul{
		display: none;
		width: 100%;
		position: absolute;
		background-color: #ccc;
	}




	/* .. 作业二*/
	.box1, .box2{
		height: 150px;
		width: 150px;
		display: none;
	}
	.box1{
		float: left;
		background-color: red;
	}
	.box2{
		background-color: blue;
		position: absolute;
	}
	.showRed:hover{
		cursor: pointer;
		background-color: red;
	}
	.showRed:hover ~ .box1{
		/*使用兄弟选择器 */
		display: block;

	}
	.showBlue:hover{
		cursor: pointer;
		background-color: blue;
	}
	 .showBlue:hover ~ .box2{  
	 	/*使用兄弟选择器 */
		display: block;

	}



	.float1, .float2, .float3, .float4{
		width: 150px;
		height: 150px;
	}
	.float1{
		background-color: red;
	}
	.float2{
		background-color: green;
	}
	.float3{
		background-color: pink;
	}
	.float4{
		background-color: black;
	}


	.float2{
		float: left;
		display: none;
	}
	.float3{
		float: left;
		display: none;
	}
	.float{
		clear: left;
	}
	</style>
</head>
<body>

	<p>给nav设置一个高度的二级导航菜单</p>
	<div class="nav">
		<ul>
			<li>Java
				<ul>
					<li>coreJava</li>
					<li>linux</li>
					<li>XML</li>
				</ul>
			</li>
			<li>WebUI
				<ul>
					<li>html</li>
					<li>css</li>
					<li>javascript</li>
				</ul>
			</li>
			<li>BigData</li>
		</ul>
	</div>

	<p>不给nav设置高度,使用伪元素的二级导航菜单</p>

	<div class="head">
		<ul>
			<li>文学
				<ul>
					<li>西游记</li>
					<li>红楼梦</li>
					<li>水浒传</li>
				</ul>
			</li>
			<li>故事
				<ul>
					<li>一千零一夜</li>
					<li>阿里巴巴与40大盗</li>
				</ul>
			</li>
			<li>科技</li>
			
		</ul>
	</div>


	<br><br><br>
	<div class="showRed">显示红盒</div>
	<div class="showBlue">显示蓝盒</div>
	<div class="box1"></div>
	<div class="box2"></div>
	<br><br><br><br><br><br><br><br><br><br>

	<div class="float1">11</div>
	<div class="float2">22</div>
	<div class="float3">33</div>
	<div class="float4">44</div>
</body>
</html>
图片

在这里插入图片描述
引用大佬博客:float和clear讲解

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值