css常规

一 盒模型

标准盒模型: 总宽度=内容 ( content ) + border + padding + margin
怪异盒模型: 总宽度 =(border + padding + content) +margin

二 弹性盒子

/*开启弹性盒子*/
display:flex
flex-direction:row   //(默认)主轴为水平方向,起点在左端。
flex-direction:row-reverse   //主轴为水平方向,起点在右端
flex-direction:column   //使用后会使主轴变为y轴
flex-firection:column-reverse   //主轴为垂直方向,起点在下沿。

flex-wrap:nowrap //(默认)不换行
flex-wrap:wrap   //换行,第一行在上方
flex-wrap:wrap-reverse    //换行,第一行在下方

flex-flow:该属性是flex-direction属性和flex-wrap属性的简写形式。
flex-flow:值1(主轴方向) 值2(是否换行)
flex-flow:row nowrap   //(默认)

justify-content:flex-start   //(默认)左对齐
justify-content:flex-end   //右对齐
justify-content:center   //居中(子元素紧凑居中)
justify-content:space-between;   //两端对齐,项目之间的间隔都相等
justify-content:space-around;   //每个项目两侧的间隔相等

align-items:flex-start    //与交叉轴的起点对其
align-items:flex-end    //与交叉轴的终点即末尾对其
align-items:center    //与交叉轴的中点对其
align-items:baseline    //项⽬的第⼀⾏⽂字的基线对齐
align-items:stretch    //如果项⽬未设置⾼度或设为auto,将占满整个容器的⾼度

align-content属性,紧跟于flex-wrap属性后,该属性用于修饰flex-wrap属性
align-content:flex-start    //与交叉轴的起点对齐
align-content:flex-end    //与交叉轴的终点对其
align-content:center    //与交叉轴的中点对齐
align-content:space-between    //与交叉轴两端对齐,轴线之间的间隔平均分布
align-content:space-around    //每根轴线两侧的间隔都相等

三 css单位

1,px 绝对单位。页面按精确像素展示。
2,em 相对单位, 根据父节点的font-size的决定 不是固定的
3,rem 相对单位 根据根节点(html)的font-size来决定的
4,vw 1vw 等于可视宽度的1%
5,vh 1vh 等于可视高度的 1%
6,% 比分比
7,pt point 大约 1/72寸 1寸等于3.333…厘米
8,pc pica,大约6pt,1/6寸。

四 css选择器

优先级
!important > 行内样式 > id选择器 > 属性选择器 > 伪类选择器 (:hover) > 标签选择器 > 伪元素(:before)

可以继承的属性
font-size, color, font-family

不可继承的属性
border,padding,margin,width,height

权重值
!important权重值:10000,
内联样式:1000,
id选择器:100
class、伪类、属性、伪元素选择器:10
标签选择器:1

css3新增的伪类
p:first-of-type:选择属于其父元素的首个元素;
p:last-of-type:选择属于其父元素的最后元素;
p:only-of-type:选择属于其父元素的唯一元素;
p:only-child:选择属于其父元素的唯一子元素;
p:nth-child(1):选择属于其父元素的第一个子元素;
:enabled:disabled:表单控件d的禁用状态;
:checked:单选框h或复选框被选中;

五 BFC

BFC(Block Formatting Context)是块级格式化上下文,他是一个独立的渲染区域 也是浮动元素与其他元素的交互的区域

下列方式会创建块格式化上下文:

html 根元素
float -left -right
position absolute fixed
display flex inline-flex inline-block

块格式化上下文 对 清除浮动 还有浮动定位 都很重要

总结
浮动定位和清除浮动时只会应用于同一个BFC 内的元素 , 浮动不会影响其他BFC中元素的布局
而清除浮动只能清除同一BFC中在它前面的元素的浮动
外边距折叠(Margin collapsing) 也只会发生在属于同意BFC的块级元素之间
BFC就是页面上的一个隔离的独立容器,容器里面的子元素不会影响到外面的元素
计算BFC的高度时,考虑BFC所包含的所有元素,连浮动元素也参与计算
浮动盒区域不叠加到BFC上

清除浮动的方法

1.给设置了浮动的元素的父级加高
2.给设置了浮动的元素的父级设置overflow:hidden.
3.需要清除的元素设置clear:both
4. 在最后一个子元素后面加一个空的div 给他眼视clear: both (不推荐)

层叠上下文

是HTML中一个三维的概念 每一个盒模型的位置都是三维的 分别是平面的X轴 Y轴 还有层叠的Z轴
z-index 具体数值 产生层叠上下文

常见的页面布局

静态布局
最传统,原始的Web布局设计 页面最外层容器 有固定的大小 超出用滚动条实现滚动阅读(overflow:scroll)
优点:不存在兼容性问题 布局简单
缺点:移动端不能用pc端的页面 两个页面的布局不一致

流式布局

也叫百分比布局随着屏幕改变 页面布局没有发生大的变化,可以进行适配调整
优点:元素的宽高用百分比来坐单位 元素宽高随着屏幕调整 布局不发生变化
缺点: 屏幕跨度过大时 页面不能正常显示

弹性布局

弹性布局是css3引入的强大布局方式 弹性盒子display:flex
优点:简单 方便 快速
缺点:css3新特性浏览器兼容问题非常头疼 手机浏览器对flex的支持也不是很理想
响应式布局

采用自适应布局和流式布局的综合方式 为不同屏幕分辨率创建流式布局 利用媒体查询检测屏幕 设置不同的css 来实现响应式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值