2024最全前端面试系列(CSS)(盒模型、flex)
.child {
display: table;
margin: 0 auto;
}
.parent {
position: relative;
}
.child {
position: absolute;
margin: 0 auto;
}
.parent {
display: flex;
justify-content: center;
}
- 垂直居中
// 只适用于单行行内元素
.parent{
height: 100px;
}
.child{
line-height: 100px;
}
.parent{
display: table-cell;
vertical-align: middle;
}
.parent{
display:flex;
align-items: center;
}
- 水平垂直居中
.parent{
display: table-cell;
text-align: center;
vertical-align: center;
}
.child{
display: inline-block;
}
.parent{
position: relative;
}
.child{
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
margin: auto;
}
.parent{
display:flex;
align-items: center;
justify-content: center;
}
- static
默认值。没有定位,元素出现在正常的流中(忽略 top, bottom, left, right 或者 z-index 声明)。
- absolute
生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位。元素的位置通过 “left”, “top”, “right” 以及 “bottom” 属性进行规定。
- fixed
生成绝对定位的元素,相对于浏览器窗口进行定位。元素的位置通过 “left”, “top”, “right” 以及 “bottom” 属性进行规定。
- relative
生成相对定位的元素,相对于其正常位置进行定位。
(1)普通选择器:通配符选择器*、标签选择器、id选择器#、类选择器.、属性选择器[]、伪类选择器:
(2)伪元素选择器::
(3)组合选择器:后代选择器 、子选择器、兄弟选择器
优先级:
内联样式:1000;
id选择器: 100;
类、伪类和属性选择器:10;
标签选择器和伪元素选择器:1.
超链元素伪类的设置顺序:link :visited :hover :active
在网页中,一个元素占有空间的大小由几个部分构成,其中包括元素的内容(content)、内边距(padding)、边框(border),外边距(margin)四个部分。
- CSS3盒模型
box-sizing: border-box;
width = content + padding + border
标准盒子模型 = margin + border + padding + content (content = width | height)
- IE盒模型
box-sizing: content-box;
width = content;
IE盒子模型 = margin + content (content = border + padding + width | height)
display: none 和 visibility: hidden 的区别
display: none 不在文档流中占位,浏览器也不会解析该元素。
visibility: hidden 在文档流中占位,浏览器会解析该元素,可理解为透明度为0的效果。
使用visibility: hidden 比display: none 性能上要好。
display: none切换显示时,页面产生回流reflow(页面中的部分元素需要改变规模尺寸、布局、显示隐藏等,页面重新构建)。
而visibility: hidden切换是否显示时则不会引起回流,只是元素的外观被改变,且在没有改变布局的情况下发生
最后
一个好的心态和一个坚持的心很重要,很多冲着高薪的人想学习前端,但是能学到最后的没有几个,遇到困难就放弃了,这种人到处都是,就是因为有的东西难,所以他的回报才很大,我们评判一个前端开发者是什么水平,就是他解决问题的能力有多强。
分享一些前端面试题以及学习路线给大家
寸、布局、显示隐藏等,页面重新构建)。
而visibility: hidden切换是否显示时则不会引起回流,只是元素的外观被改变,且在没有改变布局的情况下发生
最后
一个好的心态和一个坚持的心很重要,很多冲着高薪的人想学习前端,但是能学到最后的没有几个,遇到困难就放弃了,这种人到处都是,就是因为有的东西难,所以他的回报才很大,我们评判一个前端开发者是什么水平,就是他解决问题的能力有多强。
分享一些前端面试题以及学习路线给大家
[外链图片转存中…(img-eQ36UsyR-1725990394229)]