web前端经典面试题及答案.docx
web前端经典面试题及答案
选择题
1.以下哪个HTML标签用于定义表格的表头单元格?
A.`td`
B.`th`
C.`tr`
D.`table`
答案:B。在HTML中,`th`标签用于定义表格的表头单元格,`td`用于定义普通表格单元格,`tr`用于定义表格的行,`table`用于定义表格。
2.CSS中,设置元素透明度的属性是?
A.`opacity`
B.`filter`
C.`visibility`
D.`display`
答案:A。`opacity`属性用于设置元素的透明度,取值范围是0(完全透明)到1(完全不透明);`filter`主要用于应用图形效果;`visibility`用于控制元素的可见性,但元素仍会占据空间;`display`用于控制元素的显示方式。
3.在JavaScript中,以下哪种方式可以正确创建一个数组?
A.`vararr=newArray(1,2,3);`
B.`vararr=[1,2,3];`
C.以上两种方式都可以
D.以上两种方式都不可以
答案:C。在JavaScript中,既可以使用`newArray()`构造函数创建数组,也可以使用字面量方式`[]`创建数组,两种方式都能正确创建数组。
填空题
1.HTML中,`img`标签的`src`属性用于指定图片的______。
答案:源地址。`src`属性用于指定图片的源地址,浏览器根据这个地址去加载相应的图片。
2.CSS中,`margin`属性的四个值分别表示______、______、______、______。
答案:上、右、下、左。`margin`属性可以设置元素的外边距,当指定四个值时,依次表示上、右、下、左外边距。
3.JavaScript中,`function`关键字用于定义______。
答案:函数。在JavaScript中,使用`function`关键字来定义函数。
判断题
1.HTML标签不区分大小写。()
答案:正确。HTML标签在实际使用中不区分大小写,例如`div`和`DIV`是等效的,但为了代码的规范性和可读性,通常推荐使用小写。
2.CSS选择器`id`用于选择具有特定类名的元素。()
答案:错误。`id`是ID选择器,用于选择具有特定ID的元素,而选择具有特定类名的元素使用的是`.class`选择器。
3.在JavaScript中,`let`关键字声明的变量具有块级作用域。()
答案:正确。`let`是ES6中引入的声明变量的关键字,它声明的变量具有块级作用域,即变量只在声明它的代码块内有效。
解答题
1.请简述HTML、CSS和JavaScript的作用。
答案:HTML(超文本标记语言)用于构建网页的结构,它使用各种标签来定义网页的元素,如标题、段落、图片、表格等,是网页的基础骨架。CSS(层叠样式表)用于美化网页,它可以控制HTML元素的外观,包括颜色、字体、大小、布局等,让网页更加美观和吸引人。JavaScript是一种脚本语言,用于为网页添加交互性和动态功能,例如表单验证、菜单切换、动画效果等,使用户能够与网页进行交互。
2.如何实现一个简单的水平垂直居中的布局?
答案:以下是几种常见的实现水平垂直居中的方法:
使用Flexbox:
```html
!DOCTYPEhtml
htmllang=en
head
style
.parent{
display:flex;
justifycontent:center;
alignitems:center;
height:300px;
backgroundcolor:f0f0f0;
}
.child{
backgroundcolor:ccc;
padding:20px;
}
/style
/head
body
divclass=parent
divclass=child居中内容/div
/div
/body
/html
```
使用绝对定位和负边距(已知子元素宽高):
```html
!DOCTYPEhtml
htmllang=en
head
style
.parent{
pos