前端工程师之CSS常用技巧大合集
导读:盒模型 content-box (W3C 标准盒模型 border-box (IE 盒模型 具体区别是: 1. border-box的宽度一旦确定,就不会改变。width = border + padding + 内容的宽度...
盒模型
- content-box (W3C 标准盒模型)
- border-box (IE 盒模型)
具体区别是: 1. border-box的宽度一旦确定,就不会改变。width = border + padding + 内容的宽度 2. content-box会根据padding增加或者是减小。width = 内容的宽度
BFC
就是一个容器,里外不相互影响,记住:清除浮动的时候,如果使用 overflow: hidden,是存在缺点的,如果超过了范围,那么则被隐藏了
触发原理
1 根元素 2 float属性不为none,例如left、right 3 position为absolute或fixed 4 display为inline-block, table-cell, table-caption, flex, inline-flex 5 overflow不为visible,例如hidden、auto
规则
1. 内部的Box会在垂直方向,一个接一个地放置。 2. 属于同一个BFC的两个相邻Box的margin会发生重叠。 3. BFC的区域不会与float box重叠。 4. BFC就是页面上的一个隔离的独立容器,容器里面的子元素不会影响到外面的元素 5. 计算BFC的高度时,浮动元素也参与计算
作用
1. 清除浮动,BFC里面的浮动元素高度也会参与计算 2. 防止margin重叠
清除浮动
.clearfix:after{
content: '',
height: 0;
display: block;
visibility: hidden;
clear: both;
line-height:0;
//行高为0
}
布局
浮动布局
Title
body {
margin: 0;
padding: 0;
}
.left {
float: left;
width: 300px;
height: 100px;
background-color: red;
}
.right {
float: right;
width: 300px;
height: 100px;
background-color: blue;
}
.center {
margin: 0px 300px 0px 300px;
background-color: black;
height: 100px;
}
1
2
3
缺点:会存在塌陷的问题
Flex布局
Title
.father {
display: flex;
}
.left {
width: 300px
height: 100px;
background-color: red;
}
.center {
flex:1;
height: 100px;
background-color: black;
}
.right {
width: 300px;
height: 100px;
background-color: blue;
}
绝对定位
Title
body {
margin: 0;
padding: 0;
}
.left {
position: absolute;
left:0px;
left: 300px;
height: 100px;
background-color: red;
}
.right {
position: absolute;
right:0px;
width: 300px;
height: 100px;
background-color: blue;
}
.center {
position: absolute;
left:300px;
right:300px;
background-color: black;
height: 100px;
}
1
2
3
CSS优化
(1)压缩 (2)属性连写: font :font-style font-weight font-size (3)继承:font clolr (4) CSS放入Head中,减少reflow repaint
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 前端工程师之CSS常用技巧大合集
本文地址: https://pptw.com/jishu/668161.html
