Vue.js 初级面试题:前端基础与布局技巧
需积分: 5 6 浏览量
更新于2024-08-04
收藏 562KB DOCX 举报
"该文档是关于Vue.js前端面试题的初级版,涵盖了JavaScript基础、HTML、CSS以及Vue.js的相关知识,旨在帮助准备Vue.js初级面试的求职者进行复习。"
在前端开发中,理解HTML、CSS和JavaScript的基础概念至关重要。其中,块级元素和行内块元素是CSS布局中的两种基本元素类型:
1. 块级元素(如`<div>`):
- 通常占据整行宽度,自动换行。
- 可以设置宽、高、内边距和外边距。
- 通过`display: block`定义。
2. 行内块元素(如`<span>`或使用`display: inline-block`的元素):
- 结合了块级元素的宽高设置与行内元素的不换行特性。
- 可以设置垂直对齐属性`vertical-align`。
- 占据自身内容区域,但不影响周围元素的布局。
转换方法:
- 将块级元素转换为行内块元素:`display: inline-block`
- 将行内块元素转换为块级元素:`display: block`
实现元素水平垂直居中布局有多种方法:
1. 使用相对定位和绝对定位:
- 父级:`position: relative`
- 子级:`position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%)`
2. 使用Flex布局:
- 父级:`display: flex; justify-content: center; align-items: center`
3. 使用表格布局:
- 父级:`width: 100%; height: fixed; display: table`
- 子级:`display: table-cell; vertical-align: middle; text-align: center`
盒模型分为标准盒模型(W3C)和怪异盒模型(IE):
- 标准盒模型:元素的总宽度 = 内容宽度 + 左右内边距 + 左右边框
- 怪异盒模型:元素的总宽度 = 内容宽度 + 左右外边距 + 左右边框
通过`box-sizing: border-box`或`content-box`可以切换盒模型。
`position`属性中的`absolute`和`fixed`:
- `absolute`:相对于最近的非静态定位祖先元素定位。
- `fixed`:相对于浏览器窗口定位,不论页面滚动,元素位置始终不变。
模拟`position: sticky`效果:
- 首先让元素随滚动条移动,然后监听滚动事件,当达到特定位置时,将元素的`position`设置为`fixed`,使其固定在视口上。
清除浮动主要有以下几种方式:
1. `overflow: hidden`:隐藏父级元素溢出的内容,创建新BFC(块格式化上下文)。
2. `overflow: auto`:同上,但会显示滚动条。
3. 添加空div:`clear: both`,让其清除前后浮动元素的影响。
4. 直接在后续元素上设置`clear: both`。
事件冒泡和捕获:
- 冒泡:事件从最深的节点开始,逐级向上层元素传播事件。
- 捕获:事件从最外层元素开始,向内层元素传播事件。
- 阻止冒泡:在事件处理函数中使用`event.stopPropagation()`。
- 事件代理:利用事件冒泡原理,在父元素上绑定事件,处理子元素的事件,减少内存消耗,提高性能。
2023-02-20 上传
2024-02-02 上传
2023-09-14 上传
2023-11-03 上传
2024-05-22 上传
2023-08-01 上传
2023-09-30 上传
2023-09-13 上传
2023-09-02 上传
茂茂睡不醒
- 粉丝: 27
- 资源: 22
最新资源
- 开源通讯录备份系统项目,易于复刻与扩展
- 探索NX二次开发:UF_DRF_ask_id_symbol_geometry函数详解
- Vuex使用教程:详细资料包解析与实践
- 汉印A300蓝牙打印机安卓App开发教程与资源
- kkFileView 4.4.0-beta版:Windows下的解压缩文件预览器
- ChatGPT对战Bard:一场AI的深度测评与比较
- 稳定版MySQL连接Java的驱动包MySQL Connector/J 5.1.38发布
- Zabbix监控系统离线安装包下载指南
- JavaScript Promise代码解析与应用
- 基于JAVA和SQL的离散数学题库管理系统开发与应用
- 竞赛项目申报系统:SpringBoot与Vue.js结合毕业设计
- JAVA+SQL打造离散数学题库管理系统:源代码与文档全览
- C#代码实现装箱与转换的详细解析
- 利用ChatGPT深入了解行业的快速方法论
- C语言链表操作实战解析与代码示例
- 大学生选修选课系统设计与实现:源码及数据库架构