20200817戚权
知识点:
1.position:relative为相对定位,absoulte为绝对定位,flex为固定定位特点
1.相对定位:
1.配合偏移量top/left/right/bottom使用
-
relative是相对于自己原来的位置做偏移
-
如果相对定位不写偏移量,相当于没写定位,不会影响任何布局效果
-
相对定位不脱离文档流
-
当元素被position修饰,并且取值为relative/absolute/fixed 其中一种时,这个元素被称为已定位元素
-
relative多用于充当绝对定位的已定位祖先元素或自身元素位置的微调
top:离顶部多少距离2.绝对定位:
-
绝对定位配合偏移属性使用
top:离顶部多少距离
left:离左边多少距离
right:离右边多少距离
bottom:离底部多少距离
absolute解锁属性 -
绝对定位会脱离文档流
-
绝对定位的元素都将变成块级元素
display:block -
多数情况下,绝对定位的组先级已定位元素,都是relative
3.固定定位:
特点
- 配合偏移属性使用
top:离顶部多少距离
left:离左边多少距离
right:离右边多少距离
bottom:离底部多少距离
fixed解锁属性 - 将元素固定在页面的某个位置,不会随着页面滚动条发生位置变化,一直固定在可视区域
- 脱离文档流,不占据页面空间,会变为块级元素
- 永远都是相对于浏览器实现位置初始化
- 配合偏移属性使用
-
2面试题:页面当中的隐藏,display:none; visibility:hidden; opacity:0 ; input[type="hidden"],哪种方法是让元素在页面中真正隐藏?
1.隐藏后占据空间visibility:hidden;opacity:0;
2.影藏后不占据空间display:none;input[type="hidden"];
3.高度坍塌问题(面试题)
1.块级元素的高,如果不设置,默认靠内容撑开,如果没有设置高的块级元素,内部的所有子元素都浮动,这个块级元素认为自己内部没有元素,所以就没有高了,这种现象叫做高度坍塌
2.由于浮动元素会脱离文档流,所以导致不占据页面空间,所以会对父元素高度带来一定影响。如果一个元素中包含的元素全部是浮动元素,那么该元素高度将变成0
4.解决高度坍塌
解决高度坍塌
1. 父元素设置高度,弊端:不是每次都能明确知道具体高度
2. 父元素设置浮动,弊端:会影响父元素后续元素
3. 为父元素设置overflow属性,弊端:如果有内容要溢出显示(弹出菜单),也会被一同隐藏,,取值:hidden/auto
4. 父元素设置display:table,弊端:盒模型属性已经改变,会造成其他问题
5. 在父元素中追加一个空的,没有宽高的div,设置clear:both;
6. 使用内容生成的方式清除浮动
.clear:after{
content:"";
display:block;
clear:both;
5.opacity和rgba的区别
- opacity,元素内部只要跟颜色相关的样式,都会变透明
- rgba,只会改变当前的透明度
6.垂直对齐:top,middle,bottom,baseline:默认值,基线
1. table/td/th:设置表格中文本的垂直对齐方式
- input:设置input前后的文本、行内、行内块与这个input的垂直对齐方式
- img:设置img前后的文本、行内、行内块与这个img的垂直对齐方式
近期评论