ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Web基本笔记~08.浮动和定位

2021-01-12 16:29:05  阅读:143  来源: 互联网

标签:浮动 Web color 08 元素 笔记 background position left


Web基本笔记~08.浮动和定位

上一期

Float

       Float 属性定义元素在哪个方向浮动。以往这个属性总应用于图像,使文本围绕在图像周围,不过在 CSS 中,任何元素都可以浮动。浮动元素会生成一个块级框,而不论它本身是何种元素。CSS 的 Float(浮动)使元素脱离文档流,按照指定的方向(左或右发生移动),直到它的外边缘碰到包含框或另一个浮动框的边框为止。

基本示例

<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	<style>
		img{
			width: 200px;
			float: left;
		}
	</style>
	</head>
	<body>
		<div style="width: 350px;height: 500px;">
			<img src="./img/but.jpg" alt="按钮"/>
			中国汉朝初年的《尔雅》,是中国百科全书性质著作的渊源;古希腊学者亚里士多德编写过的全面讲述当时学问的讲义,则被西方奉为“百科全书之父”。
			中国古代的类书是一种百科全书式的资料汇编,也有学者认为明朝的《永乐大典》是最早的接近现代意义上的百科全书。
			中国近代的百科全书是20世纪初由西方引进的书体。民国时的著名学者李煜瀛是最早进行西方百科全书研究的人,将这一书体介绍到中国并产生广泛影响的。
		</div>
	</body>
</html>

在这里插入图片描述

       浮动以后使元素脱离了文档流(在页面中不占据位置)。

       浮动是碰到父元素的边框或者浮动元素的边框就会停止。

       浮动不会重叠。

       浮动只有左右浮动,没有上下浮动。

       浮动以后块级元素在同一行显示,行内元素可以设置宽高。

       元素没有设置宽度和高度时,宽度为内容撑开。

清除浮动的影响

       当元素设置 float 浮动后,该元素就会脱离文档流并向左/向右浮动,直到碰到父元素或者另一个浮动元素,浮动元素会造成父元素高度塌陷。

<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	<style>
		.out{
			background-color: #138496;
		}
		.in{
			width: 200px; height: 200px;
			background-color: #7ABAFF;
		}
	</style>
	</head>
	<body>
		<div class="out">
			<div class="in"></div>
		</div>
	</body>
</html>

在这里插入图片描述

       父元素高度由子元素撑开。但是给子元素设置浮动后效果后

<style>
		.out{
			background-color: #138496;
		}
		.in{
			width: 200px; height: 200px;
			background-color: #7ABAFF;
			float: left;
		}
</style>

在这里插入图片描述

       所以当我们设置 float 后,要根据不同情况来清除浮动

       如果要设置父标签合适的高度,则必须确定子布局的高度,来计算父布局的合适高度包住子布局。

<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	<style>
		.box{
			background-color: pink;
		}
			.one,.two,.three{ width: 200px; height: 200px; float: left;
		}
		.one{
			background-color: red;
		}
		.two{
			background-color: gold;
		}
		.three{
			background-color: green;
		}
		.footer{
			height: 300px;
			background-color: blueviolet;
			/*清除*/
			clear:both;
		}
	</style>
	</head>
	<body>
		<div class="box">
			<div class="one"></div>
			<div class="two"></div>
			<div class="three"></div>
		</div>
		<div class="footer"></div>
	</body>
</html>

Position

       position 属性指定了元素的定位类型。这个属性定义建立元素布局所用的定位机制。任何元素都可以定位,不过绝对或固 定元素会生成一个块级框,而不论该元素本身是什么类型。相对定位元素会相对于它在 正常流中的默认位置偏移。元素可以使用的顶部,底部,左侧和右侧属性定位。然而,这些属性无法工作,除非是先设定 position 属性。他们也有不同的工作方式,这取决于定位方法。

在这里插入图片描述

position:sticky

       position:sticky 是一个新的 css3 属性, 它的表现类似 position:relative 和position:fixed 的 合 体 , 在 目 标 区 域 在 屏 幕 中 可 见 时 , 它 的 行 为 就 像position:relative; 而当页面滚动超出目标区域时,它的表现就像 position:fixed,它会固定在目标位置。

       如果同时定义了 left 和 right 值,那么 left 生效,right 会无效,同样,同时定义了 top 和 bottom,则bottom无效

Z-index

       z-index 属性设置元素的堆叠顺序。拥有更高堆叠顺序的元素总是会处于堆叠顺序较低的元素的前面auto 默认。堆叠顺序与父元素相等。注释:元素可拥有负的 z-index 属性值。注释:Z-index 仅能在定位元素上奏效(例如 position:absolute;)该属性设置一个定位元素沿 z 轴的位置,z 轴定义为垂直延伸到显示区的轴。如果为正数,则离用户更近,为负数则表示离用户更远。

<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	<style>
		.box{
			position: relative;
		}
		.one{
			width: 150px; 
			height: 150px;
			background-color: #17A2B8;
			position: absolute;
			top: 50px; 
			left: 50px;
			z-index: 666;
		}
		.two{
			width: 150px; 
			height: 150px;
			background-color: #95999C; 
			position: absolute;
			left: 100px; 
			top: 100px;
		}
	</style>
	</head>
	<body>
		<div class="box">
			<div class="one"></div>
			<div class="two"></div>
		</div>
	</body>
</html>

在这里插入图片描述

position 案例

<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	<style>
		.nav{
			width: 100%; 
			height: 61px; 
			position: relative;
		}
		.nav li{
			float: left;
			padding: 20px 26px;
		}
		.nav a{
			color: #000;
		}
		.nav-list{ 
			width: 100%;
			height: 300px; 
			background-color: red; 
			position: absolute;
			left: 0;
			top: 100%;
			display: none;
		}
		.nav li:hover>.nav-list{ 
			display: block;
		}
	</style>
	</head>
	<body>
		<div class="nav">
		<ul>
			<li><a href="#">推荐</a></li>
			<li><a href="#">热榜</a><div class="nav-list"></div></li>
			<li><a href="#">要闻</a></li>
			<li><a href="#">小说</a></li>
			<li><a href="#">历史</a></li>
			<li><a href="#">科技</a></li>
		</ul>
	</body>
</html>

       下一期对position的多个案例进行深入学习

标签:浮动,Web,color,08,元素,笔记,background,position,left
来源: https://blog.csdn.net/qq_41424688/article/details/112519001

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有