Web前端面试必备知识:HTML+CSS重点解析
需积分: 9 81 浏览量
更新于2024-07-09
收藏 1.61MB PDF 举报
"最新版面试宝典(1).pdf"
面试宝典涵盖了Web前端与移动开发领域的关键知识点,包括HTML+CSS部分。以下是这些知识点的详细解析:
1. **垂直水平居中**:通过CSS,可以使用`display: flex; justify-content: center; align-items: center;` 或者 `position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);` 来实现不定宽高元素的居中。
2. **position属性**:有static、relative、absolute、fixed和sticky五个值,分别用于定位元素的位置,如static为默认值,relative相对于自身位置,absolute相对于最近的非static祖先元素,fixed相对于浏览器窗口,sticky则结合了relative和fixed的特性。
3. **px、em、rem单位**:px是像素单位,不可变;em基于父元素的字体大小;rem基于根元素(html)的字体大小,更适合做响应式设计。
4. **BFC(Block Formatting Contexts)**:是块级格式化上下文,用于确定块元素如何对其内容和周围元素进行布局。
5. **CSS引入方式**:有内联样式、内部样式表(`<style>`标签)和外部样式表(`link`和`@import`)。`link`是异步加载,`@import`会阻塞页面渲染,且`@import`在某些旧版IE浏览器中支持度较低。
6. **CSS Reset**:重置浏览器的默认样式,消除各浏览器间的样式差异,确保元素样式的一致性。
7. **CSS Sprites**:将多个小图像合并到一张大图上,通过改变背景位置来显示所需图片,减少HTTP请求,提高页面加载速度。
8. **清除浮动**:可以通过`clear:both`,额外的空div(`<div style="clear:both;"></div>`),或者使用CSS的`clearfix`类来解决浮动元素引起的父元素高度塌陷问题。
9. **响应式设计**:通过使用百分比、媒体查询(Media Queries)和弹性布局(Flexbox)或网格布局(Grid)等技术,使设计能适应不同分辨率的设备。
10. **渐进增强与优雅降级**:渐进增强是从基本功能开始,逐步增加对更高级浏览器的支持,而优雅降级是先创建高级功能,然后为旧浏览器添加回退策略,确保基本功能可用。
11. **结构与表现分离**:结构是HTML负责的内容组织,表现是CSS负责的样式设计,两者分离可以提高代码可维护性和可访问性。
12. **Web语义化**:使用具有明确含义的HTML标签,提高页面的可读性和可访问性,有利于搜索引擎优化(SEO)。
13. **CSS选择器**:包括元素选择器、类选择器、ID选择器、伪类、伪元素等。优先级是ID > 类/属性/伪类 > 元素,行内样式优先级最高。
14. **display:none vs visibility:hidden**:`display:none`元素完全不占用空间,而`visibility:hidden`元素仍保留其空间,只是不可见。
15. **浏览器兼容性**:可以通过条件注释、特定前缀(如`_`、`*`)或使用工具(如Autoprefixer)来处理不同浏览器的CSS样式兼容问题。
16. **HTML与XHTML**:XHTML更严格,要求所有标签都正确关闭,语法遵循XML规范,而HTML相对宽松。
17. **DOCTYPE**:声明文档类型,影响浏览器的解析模式。严格模式遵循标准,混杂模式则兼容旧的非标准行为。触发模式改变通常由DOCTYPE声明决定。
18. **盒模型**:W3C标准盒模型(3C)中,元素宽度=content + padding + border,IE的Quirks模式下,宽度包含content、padding和border。
19. **CSS Hack**:针对不同IE版本的兼容性问题,使用特定的CSS写法,如`_width`针对IE6,`*width`针对IE7,`width`则适用于IE8及以上。
20. **固定+自适应布局**:可以使用浮动布局、绝对定位或Flexbox来实现左侧固定宽度,右侧自适应宽度的布局。
21. **display:inline-block间隙问题**:行内块元素之间存在默认的空白间距,可通过设置`font-size: 0;`或使用负margin来消除。
22. **overflow属性**:有visible、hidden、scroll和auto四个值,用于控制内容溢出容器的处理方式。
23. **去除默认按钮样式**:通过CSS重写按钮样式,如设置`-webkit-appearance: none;`来去掉iPhone/iPad的默认样式。
24. **CSS样式初始化**:清除浏览器默认样式,确保元素在没有指定样式时具有一致的表现。
25. **div+css布局优势**:提高代码可维护性,便于响应式设计,提高页面性能,以及更好的SEO。
26. **表格对SEO的影响**:过多使用表格布局可能降低页面可读性和可访问性,不利于搜索引擎抓取内容。
27. **CSS优化技巧**:包括减少HTTP请求,合理使用CSS Sprites,压缩CSS,避免使用表达式等,以提高网页加载速度和性能。
以上知识点是Web前端开发者面试中常见的问题,理解和掌握这些内容对于提升专业技能和成功面试至关重要。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2020-11-13 上传
2022-06-09 上传
110 浏览量
2023-10-18 上传
2009-11-17 上传
2021-08-03 上传
__Zoe__
- 粉丝: 35
- 资源: 2
最新资源
- Smoker-Generator:给我照片,我帮你抽烟!
- 三菱包装-mt 高级运动_PLC_q173_三菱_包装机_运动
- Research-report-Classification-system:爬取东方财富的宏观研究的研报,基于LSTM进行情感分析,分类为正向,负向和中性三类
- Sichem:C到C#代码转换器
- 毕业设计&课设--大学毕业设计-校园小助手.zip
- gulp-starter:gulp-starter 项目
- 毕业设计&课设--仿知乎社区问答类App,吉林大学计算机科学与技术学院毕业设计.zip
- oceanhonki
- Excel模板客户登记表格式.zip
- yii2-system-info:有关服务器的信息
- notence:not受notion.so(Alpha:pushpin:)启发的开源个人笔记应用程序
- 对数音符
- protonmail-api::envelope:ProtonMail的Node.js API
- incubator_labview_TCP断线重连_tcp通信
- xiuxian:修仙之路 - 小游戏 玩法同2048
- MyAdGuardFilter:我的AdGuard过滤器