网页布局入门
网页布局
的本质就是通过CSS
把盒子
摆到相应位置。
网页布局方式
网页布局
有以下三种方式:
普通流
布局浮动
布局定位
布局
网页布局准则
网页布局
第一准则:多个块级元素纵向排列
找标准流
,多个块级元素横向排列
找浮动
网页布局
第二准则:先设置盒子大小
,再设置盒子位置
网页布局流程
- 确认页面
版心(可视区)
,可视区水平居中
- 分析页面中
行模块
,以及每个行
中的列模块
- 一行中列模块经常
浮动布局
,先确定列大小
,再确定列位置
- 先制作 html 结构。
先结构,后样式
。
标准流/普通流
标准流就是元素按照规定的默认方式
排序
- 行内元素
- 块元素
- 行内块元素
浮动布局
为什么需要浮动
- 使多个
<div></div>
在同一行展示:在标准流中使用display: inline-block
,但是盒子之间会有缝隙 - 实现两个盒子
左右对齐
:标准流很难实现
什么是浮动
float
属性用于创建浮动框,将其移动到一边,直至左边缘/右边缘遇到其他块,或者是另一个浮动框的边缘
浮动语法:float: 属性值
- none(默认值)
- left
- right
浮动的特性
- 加了浮动的元素会
脱离标准流
- 浮动的元素会
一行显示
并且元素顶部对齐
- 浮动的元素具有
行内块元素
特性
浮动的注意点
- 浮动和
标准流父盒子
搭配使用 - 一个元素浮动,其他元素
也要浮动
- 浮动的盒子只会影响
后面的标准流
清除浮动
不一定需要给父盒子设置高度
理想的状态:子盒子撑开父盒子
浮动的元素不占位置
(浮动布局中没有子盒子撑开父盒子)
因此需要清除浮动,清除浮动有以下几种方式:
- 额外标签法(w3c 推荐):在最后一个浮动的元素添加块级元素并添加属性
clear: left/right/both(推荐)
- 父级元素添加
overflow: hidden/auto/scroll
属性 - 父级添加
after伪元素
- 父级添加
双伪元素
|
|
|
|
切图
常见的图片格式
- jpg:对色彩保留信息好,产品类图片
- gif:显示简单的图形及字体,图片动画。特点:保存透明背景和动画效果
- png:结合 jpg 与 gif
- psd:photoshop 的专用格式
切图方式
- 图层切图:移动工具、合并图层(
ctrl + e
) - 切片切图:切片工具
- 插件切图:Cutterman
- 其他软件:蓝湖、幕客
定位
为什么需要定位
- 盒子
自由移动
,并且压住
其他盒子 - 盒子
位置固定
定位组成
- 定位方式
- static(默认值)
- relative
- absolute
- fixed
- sticky
- 边偏移
- top
- right
- bottom
- left
相对定位:relative
相对定位
是相对于盒子自己原来位置
相对定位
原来位置继续占有
(不脱标,保留原来位置)
绝对定位:absolute
没有父元素/父元素没有定位
则相对浏览器
进行移动- 父元素
有定位(相对/决定/固定)
则相对最近一级有定位的父元素
进行移动 - 绝对定位
脱标
,不占有原来位置
子绝父相
子级
使用绝对定位
,父亲
需要相对定位
- 子级绝对定位,
不会占有位置
,可以放在任何地方 - 父级相对定位,
约束子级
相对自己移动,并且相对定位占有原来位置
固定定位
固定定位
是固定于浏览器可视区
的位置- 固定定位会
脱标
,可以看做是特殊的绝对定位
- 固定
版心右侧
:left: 50%; margin-left: 1/2版心宽度
粘性定位
- position: sticky
- 必须设置
top/right/bottom/left
中的一个 - 不脱标
定位的叠放顺序
z-index
,值越大,越在上面
绝对定位的盒子水平/垂直居中
left: 50%; margin-left: -1/2自己宽度
top: 50%; margin-top: -1/2自己宽度
定位特性
- 加了
绝对/固定定位
/浮动
的盒子会变成行内块元素
- 加了
绝对/固定定位
/浮动
的元素默认宽度是内容宽度
绝对/固定定位
/浮动
的盒子不会发生外边距合并
绝对/固定定位
会压住标准流所有(盒子+文字)
,浮动不会压住文字
元素的显示与隐藏
display
通过display
控制隐藏的元素不会占有原来位置
,有以下几个主要可选的值:
- none(隐藏元素)
- block(显示元素/更改为块元素)
visibility
通过visibility
控制隐藏的元素还会占有原来位置
,有以下几个可选的值:
- inherit(继承,默认值)
- visible(可见的)
- hidden(隐藏)
- collapse(隐藏表格)
overflow
overflow
主要控制溢出部分的
显示策略,有以下几个可选的值:
- hidden(隐藏)
- visible(可见的,默认值)
- auto(有溢出,才展示滚轮。
textarea
元素的默认值
) - scroll(总是展示滚轮)