网页的常见布局
- 标准流
块级元素独占一行->垂直布局
行内元素/行内块元素一行显示多个->水平布局 - 浮动
可以让原本垂直布局的块级元素变成水平布局 - 定位
可以让元素自由地摆放在网页的任意位置
一般用于盒子之间的层叠情况
定位后的元素层级最高,可以层叠在其他盒子上面
可以让盒子始终固定在屏幕的某个位置
定位
-
定位的基本使用步骤
-
设置定位方式
属性名:position
常见属性名 静态定位static 相对定位:relative 绝对定位absolute 固定定位fixed -
设置偏移值
偏移值设置分为两个方向 水平和垂直方向各选一个使用即可
选取的原则一般就是就近原则
-
-
相对定位
-
先设置position 然后再设置左右
-
占有原来的位置
-
仍然具有原有的显示模式特点
-
改变位置参照自己的方向
-
定位都有,垂直以上top为准 水平以left为准
-
-
绝对定位
-
相对于非静态定位的父元素进行定位,有父级但是父级没有定位,就根据浏览器窗口为参照物进行定位
-
改变标签的显示模式特点:具备了行内块的显示特点(在一行共存、宽高生效)
-
脱标,不占位置
-
如果子集要根据父级改绝对定位,一般父级都是相对定位
父级有定位,子集才能根据父级进行绝对定位
子绝父相
绝对定位查找的父级,如果逐层查找不到这样的父级,就以浏览器为窗口为参照进行定位
-
-
案例演示
-
图片右上角的hot就是通过绝对定位完成的
-
/* hot定位小图 */ .comment ul li{ /* 父级要求是相对定位 */ position: relative; } .comment ul li .hot{ /* 子级根据父级进行绝对定位 */ position: absolute; /* 在li的右侧偏右一点 */ right: -4px; top: 4px; /* height: 40px; */ width: 40px; }
-
半透明遮罩效果
-
.mask{ /* 绝对定位的盒子是行内块显示模式的特点是:加宽高生效但是如果不加宽高就不能显示出来,只有内若能撑开 */ height: 150px; /* 如果子集和父级宽度是一致的,宽度可以加上百分之百 */ width: 100%; background-color: rgba(0,0,0,0.5); position: absolute; right: 0; top: 450px; }
固定定位
-
固定定位:相对于浏览器进行定位移动
代码:position:fixed
特点:1.需要配合方位属性实现移动
2.相对于浏览器可视区域进行移动
3.在页面中不占位置-已经脱标
4.具备行内块特点
应用场景:让盒子固定在屏幕中的某个位置
不同布局方式元素的层级关系
- 不同布局方式元素的层级关系
标准流<浮动<定位
不同定位之间的层级关系
相对、绝对、固定默认层级相同
此时HTML写在下面的层级元素更高,会覆盖上面的元素
z-index:整数;取值越大,显示顺序越靠上(必须配合定位才能够生效)
垂直对齐
-
认识基线:浏览器文字类型元素排版中存在用于对齐的基线(baseline)
浏览器处理行内或者行内块标签时,默认按照文字的特点去解析,默认文字是基线对齐的 -
垂直对齐方式
vertical-align
baseline 默认基线对齐
top 顶部对齐
middle 中部对齐
bottom 底部对齐
图片水平居中 也是text-align center
光标类型
-
设置鼠标光标在元素上时显示的样式
属性名:cursor
常见属性值: default 默认值通常是箭头
pointer 小手效果,提示用户可以点击
text 工字型,提示用户可以选择文字
move 十字光标,提示用户可以移动
边框圆角
-
让盒子的四个角变圆润,增加页面细节,提升用户体验
属性名border-radius
常见取值:数字+px、百分比
赋值规则:从左上角开始赋值,然后顺时针赋值,没有赋值的看对角
-
圆形
盒子必须要是正方形设置边框圆角为盒子的一半border-radius50%也是盒子的一半
胶囊按钮:1.要求盒子是长方形
2.设置border-radius是盒子的一半
溢出部分显示效果
-
溢出部分:指盒子内容部分所超出盒子范围的区域
场景:控制内容溢出的显示效果,如:显示、隐藏、滚动条
属性名:overflow
常见属性值:visible-默认值,溢出部分可见
hidden-溢出部分隐藏
scroll-无论是否溢出,都显示滚动条
auto-根据是否溢出,自动显示或者隐藏滚动条
显示隐藏
-
场景:让某元素本身在屏幕中不可见 如:鼠标:hover之后元素隐藏
常见属性
1.visibility:hidden
2.display:none
区别
1.visibility是一个占位隐藏效果,工作的时候不常用
2.display是一个不占位的隐藏
让某元素整体变透明opacity:0.5
画三角形
- 利用盒子的边框完成
1.设置一个盒子
2.设置四周不同颜色的边框
3.将盒子的宽高设置为0,仅保留边框
焦点伪类选择器
- 用于选中元素获取焦点时的状态,常用于表单控件
选择器用法input:focus{
background-color:skyblue
效果:表单控件获取焦点时默认会显示外部轮廓线