Web前端开发——CSS布局与定位之层定位

26 篇文章 4 订阅
订阅专栏

目录

1. 内容

2. 层定位概述

3. 固定定位position:fix

3.1 案例1

3.2 案例2

4.相对定位position:relative

4.1 保留文档流的原位置

4.2 相对于直接父元素 

5. 绝对定位position:absolute

5.1 不保留文档流的原位置

5.2 相对static定位以外的第一个父元素

5.2.1 一般情况

5.2.2 极端情况

6. relative和absolute的区别

7.relative+absolute混合使用


1. 内容

2. 层定位概述

我们希望网页的元素可以层叠在另外的一个元素上面,出现这种叠加或者覆盖的效果,这个时候我们就用到层定位,层定位像图像软件中的图层一样可以对每个layer能够精确定位操作。

  • 层定位主要使用positon属性来设定 ,当前这一层究竟可以相对于哪一层来进行定位,不同的属性值它的参照物是不同的,有了参照物之后就使用这几个属性来进行位置的设定;
  • z-index设置前后层的层叠关系,取值大的这一层会覆盖遮挡取值小的这一层,如果我们希望把当前的这个图片进行背景的设定,我们可以把它的z-index属性的取值设置的非常小,比如设置成一个负数(-999),如果设置的值很大,那么它就变成了顶层,都是按照它的取值大小顺序来逐层排列的;
     

 我们把某个网页元素称为一层,那外面的元素称为父层,里面嵌入的元素称为子层 

3. 固定定位position:fix

3.1 案例1

<!doctype html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<style>
	#fix-left{
	    width:200px;
	    height:200px;
		border:2px red solid;	
	    position:fixed;
	    left:100px;
	    top:50px;    
	}
	</style>
</head>
<body>
	<div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Aut, dolorum sequi odio minus voluptatem tempora quos pariatur est odit <div id="fix-left"></div>ullam quisquam molestiae minima placeat asperiores voluptatibus adipisci harum. Similique, a?</div>
	<div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ullam, earum, tempora, minus, facere quia accusantium ut similique labore odio minima recusandae voluptate tempore doloremque quos incidunt pariatur iusto sunt quam.</div>
	<div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quidem, amet, voluptate doloremque sed odio voluptas hic beatae totam impedit reprehenderit incidunt facilis fuga doloribus nam ea ab harum architecto quisquam.</div>
	<div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quia, eius, dolore, qui possimus eligendi aperiam ad neque odit animi doloremque nisi sequi soluta quos labore magni ab corporis ea assumenda.</div>
	<div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Facere, dignissimos, corporis, iure dolor deleniti praesentium quaerat nulla eum temporibus beatae unde optio esse! Ut, iste dolor beatae perspiciatis voluptas corporis?</div>
	<div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Culpa, in, dolor ab quae saepe aperiam dolores doloribus nulla nesciunt voluptas ipsum ipsa eaque animi maxime placeat sapiente velit dicta reprehenderit.</div>
	<div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Culpa, in, dolor ab quae saepe aperiam dolores doloribus nulla nesciunt voluptas ipsum ipsa eaque animi maxime placeat sapiente velit dicta reprehenderit.</div>
	<div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Culpa, in, dolor ab quae saepe aperiam dolores doloribus nulla nesciunt voluptas ipsum ipsa eaque animi maxime placeat sapiente velit dicta reprehenderit.</div>
	<div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Culpa, in, dolor ab quae saepe aperiam dolores doloribus nulla nesciunt voluptas ipsum ipsa eaque animi maxime placeat sapiente velit dicta reprehenderit.</div>
	<div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Culpa, in, dolor ab quae saepe aperiam dolores doloribus nulla nesciunt voluptas ipsum ipsa eaque animi maxime placeat sapiente velit dicta reprehenderit.</div>
	<div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Culpa, in, dolor ab quae saepe aperiam dolores doloribus nulla nesciunt voluptas ipsum ipsa eaque animi maxime placeat sapiente velit dicta reprehenderit.</div>
	<div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Culpa, in, dolor ab quae saepe aperiam dolores doloribus nulla nesciunt voluptas ipsum ipsa eaque animi maxime placeat sapiente velit dicta reprehenderit.</div>
	<div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Culpa, in, dolor ab quae saepe aperiam dolores doloribus nulla nesciunt voluptas ipsum ipsa eaque animi maxime placeat sapiente velit dicta reprehenderit.</div>
	<div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Culpa, in, dolor ab quae saepe aperiam dolores doloribus nulla nesciunt voluptas ipsum ipsa eaque animi maxime placeat sapiente velit dicta reprehenderit.</div>
	<div>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Culpa, in, dolor ab quae saepe aperiam dolores doloribus nulla nesciunt voluptas ipsum ipsa eaque animi maxime placeat sapiente velit dicta reprehenderit.</div>
</body>
</html>

 固定住一个div后,这个盒子不会随浏览器窗口的滚动条滚动而变化,它总在视线里相同的位置;

值得注意的是无论是哪一种定位方式,参照物的原点始终是左上角,水平轴向右为正,垂直轴向下为正

3.2 案例2

我们经常看到中间是网页的主体内容,而两侧有两个广告的广告栏,这个广告栏无论鼠标怎样拖动,浏览器窗回里面的这部分内容,会随着滚动条的滚动内容发生变化,但是这个广告始终悬停在这个位置,让用户总是能看到,这个时候我们就可以采用postton属性,取值为fixed这样的固定定位方式。

<!doctype html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<style type="text/css">
	*{
		margin: 0;
		padding: 0;
	}
	#container{
		width: 600px;
		height: 1500px;
		background-color: #ccc;
		margin: 0 auto;
	}
    #fix-left{
	    left:100px;	       
	}
	#fix-right{
	    right:100px; 
	}
	.fix{
	    width:100px;
	    height:100px;
	    border:2px red solid;	
	    position:fixed;
	    top:50px; 
	}
	.fix img{
		width: 100px;
		height: 100px;
	}
	</style>
</head>
<body>
	<div id="container">
		<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ab, delectus pariatur ipsa minima dolores facere quas neque sequi. Dolor, suscipit quisquam incidunt quas perferendis magnam quod temporibus aliquid saepe officia.</p>
		<div id="fix-left" class="fix"><img src="1.jpg" alt=""></div>
		<div id="fix-right" class="fix"><img src="2.jpg" alt=""></div></div>
    </div>
</body>
</html>
  • 两个广告栏具有相同的样式,于是用class=fix设计公共样式,其中包括大小、边界、定位方式和距离上部的位置;
  • 两个广告栏水平方向各不相同,于是用ID样式各自设置;

4.相对定位position:relative

4.1 保留文档流的原位置

定位为relative的元素脱离正常的文档流中,但其在文档流中的原位置依然存在 

初始状态的默认文档流定位

 

相对定位

 

设置相对定位后,他会脱离文档流定位,位置由top和left来决定,向右下方倾斜,但是由于它的原来在文档流当中的位置依然会被保留,所以位于它下面的另外一个statc类型的元素没有去占据它的位置,这个是租对定位它的特点

4.2 相对于直接父元素 

relative定位的层总是相对于其直接父元素,无论其父元素是什么定位方式。

 如图,定位为relative的元素是相对与图中箭头所指的深蓝色父元素

5. 绝对定位position:absolute

5.1 不保留文档流的原位置

定位为absolute的层脱离正常文本流,与relative的区别在于其在正常流中的原位置不再存在

绝对定位

 

可以看到绝对定位部分首先它会脱离文档流,它的位置上和左分别是20个像素,这个时候由于它原来的位置会被丢失,所以它下面的这一个静态的定位,也就是默认的文档流定位的元素会向上移动,占据原有这个元素它的位置
 

5.2 相对static定位以外的第一个父元素

5.2.1 一般情况

对于absolute定位的层总是相对于其最近的定义为absolute或relative的父层,而这个父层并不一定是其直接父层。

定位为absolute的元素的直接父元素也就是粉色箭头所指的元素是static,因此其直接父层不是其参照物,继续向上寻找,红色箭头所指的absolute/relative的元素才为其参照物。

5.2.2 极端情况

对于absolute定位的层,如果其父层中都未定义absolute或relative,则其将相对body进行定位

如图,absolute的元素将相对于body进行定位

6. relative和absolute的区别

7.relative+absolute混合使用

相对定位和绝对定位通常我们会结合在一起来使用,我们通常会将外层的父元素box1设置为相对定位,然后将它内层的子元素box2设置为绝对定位,这样做的好处是我们当父元素box1移动的时候,子元素是相对于父元素的位置进行定位的,所以它们两个可以一起被移动,当然除了定位子元素绝对定位之外,我们还需要定位子元素的属性确定它在父元素当中的具体位置。

<!doctype html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<style type="text/css">
	*{
		margin: 0;
		padding: 0;
	}
	div{
    	border:2px red solid;
    	color: #fff;
		
	}
	#box1{
	    width:170px;
	    height:190px;
	    position:relative;  
	}
	#box2{
	    width:99%;
	 	position:absolute;	
		bottom:0;    
	}
	</style>
</head>
<body>

<div id="box1">
    <img src="2.jpg">
    <div id="box2">一起享受咖啡带来的温暖吧</div>
</div>

</body>
</html>

当图片移动时,文字始终跟着图片一起移动,这里定义了两个盒子box1和box2,两个盒子都有相同的边框和相同文字颜色,外层盒子用相对定位,装文字的盒子用绝对定位且其底部于外层盒子重合。

 

HTML----定位
weixin_46016070的博客
06-20 441
<!DOCTYPE html> <html> <head> <title>定位</title> <style type="text/css"> div{ border: 1px solid pink; color:white; } #a{ width: 300px; height: 225px; position:fixed; left: 20px; top:50px;
web前端基础——CSS入门
01-20
Web前端开发中,CSS(Cascading Style Sheets)是一种用于表现HTML或XML文档样式的样式表语言,对于网页设计和用户体验至关重要。本文将详细介绍CSS入门的基础知识,包括CSS的引入方式、选择器、字体样式、外观属性...
web前端学习笔记(七)——定位
齐在的专栏
08-30 2045
定位的概念: 1. 定位是由html元素(标签)形成的一个特殊的box盒子。 2. 其重点在于“定位”,而html元素(标签)的定位方式由CSS来控制。通常情况下,html元素(标签)默认的定位方式叫做“静态定位”,存在于普通文档流中,而定位则是指的那些修改了定位方式的box,即非静态定位的box。 3. 定位的“定位”需要根据参照对象来实现定位的位置。 4. 定位的主要作用是用...
网页图定位
weixin_33692284的博客
05-25 276
的随意定位的特性给网页设计者带来的很大的方便,但同时也带来了一定的麻烦。为什么这样说呢?   大家都知道,为了让网页能够自动地适应用户设置的分辨率,在网页制作过程中人们采用了百分比的设置方式,从而页面的所有元素从新排版,保证原来的格式。但如果你在页面上使用了,你会发现当浏览器大小改变时,的位置却没有改变,结果它和其他的元素之间的配合出现了错位现象,页面变得杂乱无章了...
前端web前端开发CSS定位
m0_60143737的博客
07-21 102
面试题: Html 1,html语义化 2,meta viewport相关 3,canvas 相关 CSS 1,盒模型 1.1,ie盒模型算上border、padding及自身(不算margin),标准的只算上自身窗体的大小 css设置方法 1.2,几种获得宽高的方式 1.3,拓展 各种获得宽高的方式 1.4,边距重叠解决方案(BFC) BFC原理 2,css reset 和 normalize.css 有什么区别 3,居中方法 3.1,水平方向上 3.2,垂直居中 3.3,垂直水平居中根据上方结合 4,
web前端学习笔记(五)—定位
盖世小可爱的博客
02-19 198
定位的概念: 1. 定位是由html元素(标签)形成的一个特殊的box盒子。 2. 其重点在于“定位”,而html元素(标签)的定位方式由CSS来控制。通常情况下,html元素(标签)默认的定位方式叫做“静态定位”,存在于普通文档流中,而定位则是指的那些修改了定位方式的box,即非静态定位的box。 3. 定位的“定位”需要根据参照对象来实现定位的位置。 4. 定位的主要作用是用来实现小范围内容元素的排版和定位定位属性 原理:完全脱离页面文档流,独立于立体面的z轴之上。从立体
Web前端设计基础——HTML5、CSS3、JavaScript》课后答案整理.pdf
06-10
根据提供的文件内容,我们可以整理出以下Web前端设计基础的知识点: 1. HTML5、CSS3、JavaScript概述 - HTML5是最新版本的超文本标记语言,用于创建网页的标准标记语言。它具有更快的访问速度、更好的搜索引擎优化...
WEB前端面试——常见CSS知识点
06-30
WEB前端面试——常见CSS知识点 CSS是一种标记语言,用于描述网页的样式和布局。以下是常见的CSS知识点: 一、CSS盒子模型 CSS盒子模型分为标准盒模型(content-box)和怪异盒模型(border-box)。标准盒模型的...
web前端课程设计——动漫网页2个网页HTML+CSS web前端开发技术 web课程设计 网页规划与设计
08-10
2. **布局与结构设计:** - **布局方式:** 使用了常见的`DIV+CSS`布局方式,这种方式能够灵活地控制网页元素的位置与样式。 - **颜色搭配:** 采用了鲜明且充满活力的颜色方案,使得整体页面看起来更加吸引人。 ...
Web前端开发——简单讲解(完整版)
11-03
### Web前端开发基础知识点概述 #### 一、Web前端开发概览 Web前端开发是指创建网页或应用程序的用户界面部分的技术工作。它涉及到多种技术,包括但不限于HTML、CSS和JavaScript等,这些技术共同构建了一个网站的...
CSS布局定位详解(position
Paranoidyang的博客
03-05 1415
vertical-align只作用于行内元素 实现文字垂直局中的方法: (1)display: table-cell;vertical-align: middle; (2) height:160px; background-color:#BF822B; line-height: 160px;/* 让行高等于height,实现垂直局中*/
CSS定位
weixin_30340353的博客
06-12 100
position:static(静态定位) 当position属性定义为static时,可以将元素定义为静态位置,所谓静态位置就是各个元素在HTML文档流中应有的位置 podisition定位问题。所以当没有定义position属性时,并不说明该元素没有自己的位置,它会遵循默认显示为静态位置,在静态定位状态下无法通过坐标值(top,left,right,bottom)来改变它的位置。 ...
定位
qq_42627388的博客
07-05 1017
定位 1.定位:由于网页中存在叠的样式,所以在进行照片以及文档叠加的时候,我们通过定位的方式进行设计。采用position属性。 2.定位的四种方式: (1)static静态定位:此方法是默认文档流的形式进行定位 (2)fix固定定位:此方法主要用于网页中两侧的广告,无论界面怎么拖拽,两侧的内容都不会发生改变。 (3)absolute绝对定位:此方法相对于父元素进行定位,在进行定位的时候,会寻找父元素中relative 以及absolute属性的父元素,若不存在以上两种属性的父元素,则会相对于bo
前端基础之布局定位
clover_oreo的博客
12-10 337
想要实现一个赏心悦目的网页,不要一上来就做内容,先要规划好大致布局布局好了再依次往里面填充内容,不然很容易出现盒子之间塌陷、版排丑陋(没错,说的就是我的网页QAQ)之类的问题。 规划好大致布局后还要解决高度塌陷: 父元素中有子元素,并且父元素没有设置高度,子元素在父元素中浮动,结果必然是父元素的高度为0,这也就导致了父元素高度塌陷问题。 浮动脱离文档流,这个问题会对整个页面布局带来很大影响,如何解决高度坍塌问题,我们需要清除浮动 简而言之就是 子元素设置浮动,父元素未设置高度,这个时候父元素的高度
前端之样式的布局定位
qq_19831379的博客
07-23 135
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>布局定位</title> <style> html, body { margin: 0; padding: 0; } .fix { width: 100%; height: 200px; /* 定位元素感觉像浮动,但又没有浮动效.
Css+div关于定位
weixin_30367873的博客
01-03 142
1. position:static|无定位 position:static是所有元素定位的默认值, 一般不用注明,除非有需要取消继承的别的定位 example: 以下是引用片段: #div-1 { position:static; } ---------------------------------------------------------- 2. p...
前端之定位布局
weixin_46372074的博客
03-14 708
前端之定位布局定位布局前提文档流定位静态定位 -- 是文档的元素默认状态相对定位 relative绝对定位z-index固定定位 -- fixed黏性布局 -- sticky 定位布局 定位布局就是允许从正常的文档流布局中取出元素, 将它放在另一个元素的上面,或者始终保持在浏览器视窗内的同一位置。 前提 文档流 元素: 万物皆盒: 围绕元素内容添加任何内边距、边界和外边距. 默认情况下,块级元素的内容宽度是其父元素的宽度的100%,并且与其内容一样高。 内联元素高宽与他们的内容高宽一样。无法设置尺寸,
写文章

分类专栏

  • js逆向 1篇
  • redis 1篇
  • git 1篇
  • Python 28篇
  • PyQt5 1篇
  • Pandas 1篇
  • matplotlib 2篇
  • Fortran 1篇
  • Vue 8篇
  • mysql 1篇
  • Node 3篇
  • JavaScript 2篇
  • Windows 3篇
  • Linux 3篇
  • TensorFlow 1篇
  • Typora 1篇
  • Web前端开发 26篇
  • Anoconda
  • C# 2篇
  • ArcGis 2篇
  • GNSS 2篇
  • Ubuntu 2篇
  • GAMIT 3篇
  • GMT 4篇
  • Panoply 1篇
  • Matlab 7篇
  • perl 2篇

最新评论

  • 史上最全最详细的Anaconda安装教程

    Croopers: 大哥你换源的方法1和方法2的网址不一样啊 方法一没有用,2有用的

  • 史上最全最详细的Anaconda安装教程

    qq_45719856: 是不是刷的赞和收藏啊,官方来看下吧

  • 史上最全最详细的Anaconda安装教程

    qq_45719856: 真是误人子弟!!!居然还这么高赞和收藏。 用这篇安装成功了,创建虚拟环境也没问题,需要自取:https://blog.csdn.net/VN520/article/details/142617221

  • 史上最全最详细的Anaconda安装教程

    唔西迪西0103: 我也是,哥们你找到原因了吗?

  • IRI-2016 Matlab 使用教程

    m0_62499062: 大佬能分享一下代码吗,我可以给钱

大家在看

  • 论文 Python 实现WOA-CNN-BiGRU-Attention数据分类预测 64
  • 手环押金原路退回系统——足浴店——东方仙盟

最新文章

  • scipy.signal.convolve中full、valid、same区别
  • 小红书js逆向x-s之补环境
  • 小红书X-S逆向 8月10日
2024年5篇
2023年8篇
2022年8篇
2020年74篇
2019年18篇
2018年4篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值

玻璃钢生产厂家济源玻璃钢浮雕雕塑定制定做宁波玻璃钢雕塑定做推荐四川常用商场美陈现价玻璃钢雕塑日常保养与维护信阳景观玻璃钢卡通雕塑定制厂家渭南商场美陈玻璃钢龙雕塑设计厂家武汉玻璃钢浮雕卡通雕塑公司海口玻璃钢雕塑厂家多少钱安阳镜面玻璃钢彩绘雕塑厂家金属玻璃钢雕塑厂晋城玻璃钢广场雕塑价格湖北玻璃钢孙悟空雕塑生产厂家武汉公园玻璃钢雕塑河南喷泉雕塑玻璃钢河北园林玻璃钢雕塑定制玻璃钢雕塑制作步骤图玻璃钢浮雕雕塑设计价格长沙水景玻璃钢彩绘雕塑公司镇江景观灯玻璃钢花盆广东卡通玻璃钢动漫雕塑玻璃钢大白菜雕塑厂家选哪家重庆玻璃钢雕塑卡通娃娃临沧佛像玻璃钢雕塑营口批发供应沈阳玻璃钢花盆玻璃钢花盆哪个好用玻璃钢花盆使用寿命湖北镂空不锈钢校园玻璃钢雕塑太湖玻璃钢卡通雕塑商场美陈陈列图片大全香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化