HTML基础-04
定位
定位:通过定位可以将元素摆放在页面中任意位置
语法:position属性设置元素的定位
可选值:static:默认值,开启定位
relative开启相对定位
absolute开启绝对定位
fixed开启固定定位
相对定位:当元素设置position:relative;开启元素的相对定位
1 开启相对定位,元素不会发生任何变化
2 开启相对定位后,元素不会脱离文档流
3 相对定位的元素,是相对于其在文档流中的位置进行定位的
4 相对定位会使元素提升一个层级(可以遮盖其他块)
5 相对定位不会改变元素的性质,块还是块,行内还是行内
当元素开启定位后,可以通过四个方向的偏移量(offset)来控制元素的位置:
top:元素与其定位位置的顶部距离
bottom:元素与其定位位置的底部距离
left:元素与其定位位置的左侧距离
right:元素与其定位位置的右侧距离
绝对定位:(难点:参照物??)当元素设置position:absolute;开启元素的绝对定位
1 绝对定位会完全脱离文档流
2 绝对定位会改变元素的性质,行内变块,块宽高被内容撑开
3 开启绝对定位后若不设置偏移量,元素的位置不发生变化,位置还在那里
4 绝对定位会相对于离它最近的开启了定位的祖先元素进行定位
5 绝对定位会使元素提升一个层级(层级优先级:文档流<浮动<定位)
<div class=’box1’>
<div class=’box2’>
<div class=’box3’></div></div>
</div>
定位时的参照物:
若box2设置absolute,box3与box2原点对齐;若box2未开,box1开,与box1对齐;否则与body对齐
若所有祖先元素都未开启绝对定位,则相对于HTML标签进行定位
一般情况,我们为一个元素开启绝对定位,会同时为它的父辈元素开启相对定位
绝对定位元素会相对于它的包含块进行定位
包含块:
对于绝对定位元素来说,包含块就是离它最近的开启定位的块元素
若没有开启定位的祖先元素,则其包含块是网页中的初始包含块(html为初始包含块)
开启绝对定位后,布局的公式新加入四个属性:
水平方向:
left+margin-left+border-left+padding-left+width+padding-right+border-right+margin-right+right=包含块的宽度
绝对定位元素水平方向布局的等式:auto+auto+0+0+200px+0+0+auto+auto=500px
垂直方向:
top+margin-top+border-top+padding-top+height+padding-bottom+border-bottom+margin-bottom+bottom=包含块的高度
此时有五个值可设置为auto:left/right/margin-left/margin-right/width
在包含块中居中:
left:0;
right:0;
margin:0 auto;
全部居中(上下左右)
position:absolute;
left:0;
right:0;
top:0;
bottom:0;
Margin:auto;
固定定位:当元素设置position:fixed;开启元素的绝对定位
特点与绝对定位一样,不同点:相对于浏览器的窗口(视口)进行定位
粘滞定位:电话部:王,李---粘滞其姓
.l1{
position:sticky; 将l1标签的内容黏贴
top:0;
background-color:#bfa;
}
.l1{ 将l2标签的内容黏贴
position:sticky;
top:20px;
background-color:#bfa;
}
层级:开启定位元素会提升一个层级,定位元素层级可以同z-index来设置,z-index需要一个整数作为参数,值越大层级越高
父元素的层级再高,也不会盖住子元素;
若z-index的值相等,则后面元素会盖住前边元素;使用z-index时,需要开启 定位;
position:relative;
z-index:n;
设置不透明颜色度:方法一:opacity:0-1;(不,完全透)------0.5:半透明 元素整个透明(文字)
方法二:rgba(0,0,0,0.5) 只是颜色透明
HTML基础-04的更多相关文章
- javaSE基础04
javaSE基础04 一.三木运算符 <表达式1> ? <表达式2> : <表达式3> "?"运算符的含义是: 先求表达式1的值, 如果为真, ...
- javascript基础04
javascript基础04 1.循环语句 1.While 语句: while (exp) { //statements; } var i = 1; while(i < 3){ alert(i) ...
- Linux命令工具基础04 磁盘管理
Linux命令工具基础04 磁盘管理 日程磁盘管理中,我们最常用的有查看当前磁盘使用情况,查看当前目录所占大小,以及打包压缩与解压缩: 查看磁盘空间 查看磁盘空间利用大小 df -h -h: huma ...
- Linux基础04
** Linux基本操作常用命令(四) ** Linux系统管理命令 1.top:查看系统资源,每隔三秒刷新一次,按q:退出浏览状态 2.free:查看内存信息,-m,以MB单位显示 3.netsta ...
- Spring 框架基础(04):AOP切面编程概念,几种实现方式演示
本文源码:GitHub·点这里 || GitEE·点这里 一.AOP基础简介 1.切面编程简介 AOP全称:Aspect Oriented Programming,面向切面编程.通过预编译方式和运行期 ...
- Java入门 - 语言基础 - 04.对象和类
原文地址:http://www.work100.net/training/java-object-class.html 更多教程:光束云 - 免费课程 对象和类 序号 文内章节 视频 1 概述 2 J ...
- Java知识系统回顾整理01基础04操作符05赋值操作符
一.赋值操作 赋值操作的操作顺序是从右到左 int i = 5+5; 首先进行5+5的运算,得到结果10,然后把10这个值,赋给i public class HelloWorld { public s ...
- Java知识系统回顾整理01基础04操作符01算术操作符
一.算数操作符类别 基本的有: + - * / % 自增 自减: ++ -- 二.基本算数操作符 + - * / 基本的加 减 乘 除 public class HelloWorld { public ...
- python基础04 运算
数学运算 print 2+2 #加法 print 1.3-4 #剪法 print 3*5 #乘法 print 4.5/1.5 #除法 print 3**2 #乘方 print 10%3 #求 ...
- C#基础04
介绍:泛型介绍,索引,Foreach遍历的解释,yield方法,path文件操作,Directory类基本操作<目录> 一:泛型 百度资料:泛型是 2.0 版 C# 语言和公共语言运行 ...
随机推荐
- 集训作业 洛谷P1866 编号
这个题是个数学题啊. 总体思路不是很难,每个兔子有一个编号,只要不停的看下一个兔子有多少可选编号,再乘上之前的所有可能性就可以算出一共的编号方法. #include<iostream> # ...
- 2.UDP协议
UDP只在IP数据报服务之上增加了很少功能,即复用分用和差错检测功能. 应用层给UDP多长的报文,UDP就照样发送,即一次发送一个完整报文 一.UDP首部格式 这里的长度是指(首部+数据) UDP校验 ...
- Java之枚举类
有时候,变量的取值只在一个有限的集合内. 例如:pizza的大小只有小.中.大和超大这四种尺寸.当然,可以将这些尺寸分别编码为1.2.3.4或者S.M.L.X.但这样存在着一定的隐患.在变量中很有可能 ...
- django-celery 版本 常用命令
http://celery.github.io/django-celery/introduction.html #先启动服务器 python manage.py runserver #再启动worke ...
- js原型、原型链
之前有说过继承,在js中没有类,所以在new的后面,放的是构造函数,在构造函数中有一个属性prototype,js的继承全靠它. 在js中对象的类型有很多,常见的就是普通对象,和函数对象,在对象中都会 ...
- java基础(11)--封装
一.java面向对象三大特别: 1.封装 2.继承 3.多态 二.封装的作用 1.属性私有化(private) 2.对外提供简单的入口 如公开的set()与get()方法,并且都不带static ...
- Python 为什么要有 pass 语句?
本文出自"Python为什么"系列,请查看全部文章 关于 Python 中的pass语句,它似乎很简单(只有 4 个字母),即使是没有任何编程经验的初学者也能很快地掌握它的用法. ...
- 朝阳大妈也能听懂的git教程 (好人不谢)
1 核心概念(非常简单) 分支 同一个树关节 长两个分叉 每一个树关节 就是一个commit commit 是纵向纬度的版本 分支(branch) 是横向纬度的版本 (发挥想象力 自己 ...
- Django学习路5_更新和删除数据库表中元素
查找所有的元素 Student.objects.all() 查找单个元素 Student.objects.get(主键=值) 主键 pk = xxx 更新数据库数据后进行保存 stu.save() 删 ...
- PHP array_shift() 函数
实例 删除数组中的第一个元素(red),并返回被删除的元素: <?php $a=array("a"=>"red","b"=> ...