CSS学习笔记之定位
position 有4中不同类型的定位,分别为static、relative、absolute、fixed
1.static
元素框正常生成。块级元素生成一个矩形框,作为文档流的一部分,行内元素则会创建一个或多个行框,置于其父元素中。
2.relative(相对定位)
元素框偏移某个距离。元素仍保持其未定位前的形状,它原本所占的空间仍保留。
默认情况下,它是以父级元素的原始点(左上角)作为原始点,如果没有父级元素,则以文本流(页面的文本区)的顺序在上一个元素的底部作为原始点,配合TRBL(top、right、bottom、left)进行定位;
需要注意的地方是如果父级元素有padding等其他CSS属性,当前的原始点则按照父级元素的内容区的原始点来进行定位(受父级元素的padding等CSS元素影响)。有如下的属性:
a.如果没有TRBL,以父级元素的左上角作为原始点进行定位,如果没有父级元素,则以浏览器的左上角作为原始点进行定位;如果在没有父级元素的情况下,存在文本,则以它前面的一个文本的最后一个字的右上角
作为原始点进行定位,且文字不断开,覆盖在文字的上方。
b.设定了TRBL,但是父级元素没有设置position属性,仍然以父级元素的左上角作为原始点进行定位。
c.如果设定了TRBL,且父级元素也设置了position属性(无论是absolute还是relative),也以父级元素的左上角作为原始点进行定位,如果父级元素有padding等CSS元素,则以内容区的左上角作为原始点进行定位。
3.absolute(绝对定位)
生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位。
默认情况下,是参照浏览器的左上角,配合TRBL(top、right、bottom、left)进行定位;主要有如下的属性:
a.如果没有TRBL,以父级元素的左上角作为原始点进行定位,如果没有父级元素,则以浏览器的左上角作为原始点进行定位;如果在没有父级元素的情况下,存在文本,则以它前面的一个文本的最后一个字的右上角
作为原始点进行定位,且文字不断开,覆盖在文字的上方。
b.设定了TRBL,但是父级元素没有设置position属性,那么则以浏览器的左上角为原始点进行定位,位置将由TRBL决定。
c.如果设定了TRBL,且父级元素也设置了position属性(无论是absolute还是relative),则会以父级元素的左上角作为原始点进行定位,且父级元素的padding等CSS元素不会对其影响。
注意:使用position来布局,父级元素的position属性为relative,而定位于父级内部某个位置的元素,最好用absolute(因为可以不受父级元素的padding等CSS属性影响)
4.TRBL
top:定义了一个定位元素的上外边距边界与其包含块上边界之间的偏移。
right:定义了定位元素右外边距边界与其包含块右边界之间的偏移。
bottom:定义了定位元素下外边距边界与其包含块下边界之间的偏移。
left:定义了定位元素左外边距边界与其包含块左边界之间的偏移。
5.overflow
设置当元素的内容溢出其区域时发生的事情。
接受visible(默认值)、hidden(内容会被修剪,并且其余内容是不可见的)、scroll(内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容)、
auto(如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容)
6.clip
设置元素的形状
接受auto(默认值)、shape(唯一合法的形状值是:rect (top, right, bottom, left),其中值都为数值,如1px)
7.vertical-align
设置元素的对齐方式
可以接受如下的值:
8.z-index
设置元素的堆叠顺序
可以接受auto(默认)、number(如取-1,则处于字体的下方)
CSS学习笔记之定位的更多相关文章
- html+css学习笔记 4[定位]
如何让图1中的div2移动到如图2上的位置: 思路:哪些css命令能够影响盒子显示的位置呢? relative相对定位/定位偏移量 position:relative; 相对定位 a ...
- CSS学习笔记:定位属性position
目录 一.定位属性简介 二.各属性值的具体功能 1. relative 2. absolute 3. fixed 三.三种定位属性的效果总结 参考资料:https://www.bilibili.com ...
- CSS学习笔记10 相对定位,绝对定位与固定定位
文档流中的元素的位置由元素在 (X)HTML 中的位置决定,这就是最原始的普通流,前面讲到的浮动CSS学习笔记08 浮动可以改变元素在文档流中的位置,除了这个我们还可以通过使用CSS的position ...
- CSS学习笔记
CSS学习笔记 2016年12月15日整理 CSS基础 Chapter1 在console输入escape("宋体") ENTER 就会出现unicode编码 显示"%u ...
- CSS学习笔记09 简单理解BFC
引子 在讲BFC之前,先来看看一个例子 <!DOCTYPE html> <html lang="en"> <head> <meta cha ...
- CSS学习笔记之样式声明
目录 1.背景 2.文本 3.字体 4.列表 5.表格 6.轮廓 在这篇文章中你能看到有关于 CSS 样式设置的常用属性,文章的目录如下: 1.背景 (1)背景颜色 可以使用 background-c ...
- CSS学习笔记之基本介绍
1.简介 层叠样式表(Cascading Style Sheets,CSS)允许我们把样式设置存储在文件中,从而将内容与表现分离 当同一个 HTML 元素被不只一个样式定义时,最终的样式确定顺序如下( ...
- 2022-07-10 第五小组 pan小堂 css学习笔记
css学习笔记 什么是 CSS? CSS 指的是层叠样式表* (Cascading Style Sheets) CSS 描述了如何在屏幕.纸张或其他媒体上显示 HTML 元素 CSS 节省了大量工作. ...
- HTML+CSS学习笔记 (7) - CSS样式基本知识
HTML+CSS学习笔记 (7) - CSS样式基本知识 内联式css样式,直接写在现有的HTML标签中 CSS样式可以写在哪些地方呢?从CSS 样式代码插入的形式来看基本可以分为以下3种:内联式.嵌 ...
随机推荐
- 【计算机视觉领域】常用的 feature 提取方法,feature 提取工具包
[计算机视觉领域]常用的 feature 提取方法,feature 提取工具包 利用 VL 工具包进行各种特征的提取: VL 工具包官网地址:http://www.vlfeat.org/index.h ...
- 通过js对表单对象的便捷获取
<form name="a"> <input name="s" value="33"/> </form> ...
- 套接字I/O模型-重叠I/O
重叠模型的基本设计原理是让应用程序使用重叠的数据结构,一次投递一个或多个WinsockI/O请求.针对那些提交的请求,在它们完成之后,应用程序可为它们提供服务.模型的总体设计以Windows重叠I/O ...
- Python内部类型
Python使用对象模型来存储数据 . 身份:每个对象都有一个唯一的身份标识自己,任何对象的身份否可以使用内建函数id()来得到.这个值可以被认为是该对象的内存地址 . 类型:对象的类型决定了该对 ...
- 让Js顺序执行且回调之
<script src="aaa"></script> <script type="aaasdf" id="asdf&q ...
- unity, 使导入的材质名与3dmax中一致
在fbx的Import setting的model选项页中:
- javascript 函数节流方法
函数节流可以缓解调用的次数,代码如下: function throttle(method,delay){ var timer=null; return function(){ var context= ...
- ASP.NET 4.0的ClientIDMode属性
时光流逝,我们心爱的ASP.NET也步入了4.0的时代,微软在ASP.NET 4.0中对很多特性做了修改.比如我将要讨论的控件ID机制就是其中之一. 在ASP.NET 4.0之前我们总是要为控件的Cl ...
- 转:java日志组件介绍(common-logging,log4j,slf4j,logback )
原网址:http://www.blogjava.net/daiyongzhi/archive/2014/04/13/412364.html common-logging common-logging是 ...
- NAT,网络地址转换详解
这个技术,是一个非常成熟的技术了,但是,为了将其弄得清楚点,体系点,也为了备忘,还是有必要在这里梳理一下! NAT:Network Address Translation. 这个主要是用在网络地址(I ...