Web期末错题汇总
错题1:
一、单选题
1.【单选题】
下面关于 HTML 的说法错误的是( )。
A. HTML 是一种标记语言
B. HTML 可以控制页面和内容的外观
C. HTML 文档总是静态的
D. HTML 文档是超文本文档
2.【单选题】
下列标记中属于行内标记的是( )。
A. <p>
B. <div>
C. <img>
D. <table>
3.【单选题】
浏览器在解析 HTML 时,遇到不合法的嵌套结构通常会( )。
A. 直接报错并停止解析
B. 忽略整个标签及其内容
C. 自动纠正结构以继续渲染
D. 显示空白页面
4.【单选题】
下列哪种情况最容易导致浏览器自动修改 DOM 结构?( )
A. 使用 <span> 包裹文本
B. 忘记写 alt 属性
C. 使用不允许嵌套的标签组合
D. 标签属性顺序写错
二、判断题
5.【判断题】
<p>标签可以直接嵌套另一个 <p> 标签。( )
A. 对
B. 错
6.【判断题】
浏览器解析 HTML 是严格按照“从上到下逐行执行”的方式。( )
A. 对
B. 错
好,这里我一次性把你刚才那 6 道错题的【标准答案】全部给你,
直接给结论,不绕弯子,方便你对照、订正、记忆。
标准答案
1.【单选题】
下面关于 HTML 的说法错误的是( )。
答案:B
2.【单选题】
下列标记中属于行内标记的是( )。
答案:C(<img>)
3.【单选题】
浏览器在解析 HTML 时,遇到不合法的嵌套结构通常会( )。
答案:C
4.【单选题】
下列哪种情况最容易导致浏览器自动修改 DOM 结构?( )
答案:C
5.【判断题】
<p> 标签可以直接嵌套另一个 <p> 标签。( )
答案:B(错)
6.【判断题】
浏览器解析 HTML 是严格按照“从上到下逐行执行”的方式。( )
**答案:B(错)
错题2:
一、单选题(共 10 题)
第 10 题(单选)
关于 CSS 盒模型,下列说法正确的是( )。
A. margin、border、padding 都不计入元素的实际宽度
B. 设置 box-sizing: border-box 后,元素的宽度包含 content、padding 和 border
C. padding 是元素边框外的距离
D. margin 可以是负值,但 padding 不能是负值
第 12 题(单选)
用 CSS Grid 创建一个 2 行 3 列的网格布局,应该使用( )属性?
A. grid-template: 2 / 3;
B. grid-rows: 2; grid-columns: 3;
C. grid-template-rows: 2; grid-template-columns: 3;
D. grid-template-rows: repeat(2, 1fr); grid-template-columns: repeat(3, 1fr);
第 15 题(单选)
如果希望网格布局中的组件可以占据多个单元,则不可以使用的属性是( )。
A. grid-template
B. grid-column
C. grid-row-start
D. grid-row-end
第 17 题(单选)
下面不属于边框样式属性的是( )。
A. width
B. color
C. style
D. position
第 19 题(单选)
在 HTML 中,( )列表元素最适合用于展示词汇表(每个术语后面跟着它的定义)?
A. <ul>
B. <ol>
C. <dl>
D. <div>
第 21 题(单选)
下列对盒模型描述不正确的是( )。
A. 一个盒子由边界、边框、填充和内容区域 4 个部分组成
B. 盒子的填充、边框、边界和内容区域都分为上、下、左、右 4 个方向
C. CSS 定义盒子的 width 和 height 时,实际上定义的是内容区域的 width 和 height
D. 盒子的宽度是内容宽度加上 padding、border 和 margin
第 22 题(单选)
以下哪项不是浮动引起的问题( )。
A. 父元素的高度无法被撑开
B. 与浮动元素同级的文本跟随其后显示
C. 与浮动元素同级的非浮动元素被覆盖
D. 父元素设置为固定高度,但是不能完全显示子元素内容
第 27 题(单选)
若要设置图片与同一行文本之间的对齐关系,需要使用的样式属性是( )。
A. text-align
B. target
C. width
D. vertical-align
第 28 题(单选)
在列表中,对列表符号的位置进行设置的 CSS 属性是( )。
A. list-style-type
B. list-style-image
C. list-style-position
D. list-style-show
第 30 题(单选)
以下哪个 CSS 属性用于定义网格中的行数和列数?( )
A. grid-rows 和 grid-columns
B. grid-template-rows 和 grid-template-columns
C. row-count 和 column-count
D. grid-size
二、判断题(共 7 题)
第 35 题(判断)
第 36 题(判断)
设置 height: 100% 会使 <div> 自动占据整个屏幕高度。
第 39 题(判断)
position: relative 会使元素脱离正常文档流。
第 41 题(判断)
<a> 标签是页面链接标签,只能用来链接到本页面的其他位置。
第 42 题(判断)
text-align: center 可以使 <div> 在父容器中水平居中。
第 43 题(判断)
在 div 的属性中,margin-left 是设置对象的左填充。
第 46 题(判断)
<a> 标签的 src 属性用于指定要链接的地址。
解析:
一、单选题错题解析(10 题)
第 10 题|CSS 盒模型
题目
关于 CSS 盒模型,下列说法正确的是( )。
选项
A. margin、border、padding 都不计入元素的实际宽度
B. 设置 box-sizing: border-box 后,元素的宽度包含 content、padding 和 border
C. padding 是元素边框外的距离
D. margin 可以是负值,但 padding 不能是负值
✅ 正确答案
B
🧠 解析
- 默认情况下:
width只表示 content - 设置
box-sizing: border-box后:
👉width = content + padding + border - margin 永远不计入 width
❌ A 错在“默认 padding、border 不算”
❌ C 混淆了 padding 和 margin
❌ D 说法本身对,但不是本题考点(题目问盒模型核心定义)
第 12 题|CSS Grid 行列定义
题目
用 CSS Grid 创建一个 2 行 3 列的网格布局,应该使用( )属性?
选项
A. grid-template: 2 / 3
B. grid-rows 和 grid-columns
C. grid-template-rows: 2; grid-template-columns: 3
D. grid-template-rows: repeat(2, 1fr); grid-template-columns: repeat(3, 1fr);
✅ 正确答案
D
🧠 解析
- Grid 行数:
grid-template-rows - Grid 列数:
grid-template-columns - 必须写 合法单位(如
fr)
❌ B / C:属性或单位不合法
❌ A:语法错误
第 15 题|Grid 跨行跨列
题目
如果希望网格布局中的组件可以占据多个单元,则不可以使用的属性是( )。
选项
A. grid-template
B. grid-column
C. grid-row-start
D. grid-row-end
✅ 正确答案
A
🧠 解析
grid-template:定义整体网格结构- 其他三个:控制单个元素跨几行 / 几列
第 17 题|边框属性
题目
下面不属于边框样式属性的是( )。
选项
A. width
B. color
C. style
D. position
✅ 正确答案
D
🧠 解析
边框三要素固定是:
1 | border = width + style + color |
position 属于定位属性,与边框无关。
第 19 题|HTML 语义列表
题目
在 HTML 中,( )列表最适合展示词汇表?
选项
A. <ul>
B. <ol>
C. <dl>
D. <div>
✅ 正确答案
C
🧠 解析
1 | <dl> |
这是 HTML 专门为“术语-解释”设计的语义结构。
第 21 题|盒模型理解
题目
下列对盒模型描述不正确的是( )。
选项
A. 盒子由边界、边框、填充和内容区域组成
B. 填充、边框、边界和内容区域都有上下左右
C. width / height 定义的是内容区大小
D. 盒子宽度是内容 + padding + border + margin
✅ 正确答案
B
🧠 解析
CSS 中没有“边界”这个概念,只有:
1 | content / padding / border / margin |
“边界”不是合法盒模型组成部分。
第 22 题|浮动副作用
题目
以下哪项不是浮动引起的问题( )。
选项
A. 父元素高度塌陷
B. 文本环绕
C. 非浮动元素被覆盖
D. 父元素高度固定导致子元素显示不全
✅ 正确答案
D
🧠 解析
- A / B / C 都是 float 的经典副作用
- D 是 父元素高度设置问题,与浮动无直接关系
第 27 题|图片与文本对齐
题目
设置图片与同一行文本之间的对齐关系,使用( )。
选项
A. text-align
B. target
C. width
D. vertical-align
✅ 正确答案
D
🧠 解析
text-align:控制文本在容器中的对齐vertical-align:控制 行内元素之间 的垂直对齐(图片 vs 文字)
第 28 题|列表符号位置
题目
对列表符号的位置进行设置的 CSS 属性是( )。
选项
A. list-style-type
B. list-style-image
C. list-style-position
D. list-style-show
✅ 正确答案
C
🧠 解析
| 属性 | 含义 |
|---|---|
| type | 符号样式 |
| image | 图片符号 |
| position | 符号位置 |
第 30 题|Grid 行列总控
题目
定义网格行数和列数的 CSS 属性是( )。
选项
A. grid-rows / grid-columns
B. grid-template-rows / grid-template-columns
C. row-count / column-count
D. grid-size
✅ 正确答案
B
二、判断题错题解析(7 题)
第 35 题
👉 <div> 默认是“干净容器”,无外边距内边距。
第 36 题
height:100% 会占满屏幕
❌ 错
👉 前提是 父元素有明确高度。
第 39 题
position: relative 会脱离文档流
❌ 错
👉 relative 不脱离,absolute / fixed 才脱离。
第 41 题
<a>只能链接页面内
❌ 错
👉 <a> 可链接 站内 / 站外 / 锚点。
第 42 题
text-align:center 可让 div 自身居中
❌ 错
👉 它只能让 内容 居中,div 居中靠 margin:0 auto。
第 43 题
margin-left 是左填充
❌ 错
👉 填充是 padding-left,margin 是外边距。
第 46 题
<a> 用 src 指定地址❌ 错
👉 <a> 用 href,src 给 img / script 用。
错题3:
第 2 题(单选)
在 HTML 中,哪个表单元素最适合用于让用户从多个选项中选择一个答案?( )
A. <input type="text">
B. <textarea>
C. <input type="radio">
D. <input type="checkbox">
第 9 题(单选)
创建表格的表头(通常显示为粗体居中),应该使用哪个标签?( )
A. <td class="header">
B. <thead>
C. <th>
D. <header>
第 13 题(判断)
在 HTML 中,表格必须由 <table> 标签、<tr> 标签、<td> 标签组成,缺一不可。( )
A. 对
B. 错
答案:
❌ 第 2 题
题目:
在 HTML 中,哪个表单元素最适合用于让用户从多个选项中选择一个答案?
你的答案:D. <input type="checkbox">
✅ 正确答案:C. <input type="radio">
核心逻辑:
- radio:多选一(互斥)
- checkbox:多选多(不互斥)
👉 题目说的是 “选择一个答案”,这是标准 radio 场景。
❌ 第 9 题
题目:
创建表格的表头(通常显示为粗体居中),应该使用哪个标签?
你的答案:B. <thead>
✅ 正确答案:C. <th>
必须彻底分清:
| 标签 | 作用 |
|---|---|
<thead> |
表头区域(结构容器) |
<th> |
表头单元格(真正显示粗体居中) |
👉 显示效果 + 语义 = <th>
❌ 第 13 题
题目:
在 HTML 中,表格必须由 <table>、<tr>、<td> 标签组成,缺一不可。
你的答案:B. 错
✅ 正确答案:A. 对
考试语境关键点:
- 这是在考 “基础表格结构”
<th>是<td>的语义变体,但不是替代关系
👉 考试里不要抬杠 HTML5 宽松解析
错题4:
- 在 JavaScript 中,获取今天是星期几的方法是( )
A. new Date().getDate()
B. new Date().getTime()
C. new Date().getDay()
D. new Date().getFullYear()
- 下列表式成立的是( )
A. parseInt(12.5) == parseFloat(12.5)
B. Number("123abc") == parseFloat("123abc")
C. isNaN("abc") == NaN
D. typeof NaN == "number"
答案:
❌ 错题 1:第 9 题
你的答案
A
题目回顾
在 JavaScript 中,获取今天是星期几的方法是( )
A. new Date().getDate()
B. new Date().getTime()
C. new Date().getDay()
D. new Date().getFullYear()
错因(直说)
你把 “几号” 和 “星期几” 混了。
getDate()→ 几号(1–31)getDay()→ 星期几(0–6,周日是 0)
这是 JS 里最经典的坑之一,不是你一个人掉进去过。
👉 结论:
星期 = Day,不是 Date
❌ 错题 2:第 16 题
你的答案
C
题目回顾
下列表达式成立的是( )
A. parseInt(12.5) == parseFloat(12.5)
B. Number("123abc") == parseFloat("123abc")
C. isNaN("abc") == NaN
D. typeof NaN == "number"
错因(这个很“阴”)
你被 NaN 本身的“反直觉”坑了。
关键事实只有一句话:
NaN 和任何东西都不相等,包括它自己
所以:
1 | isNaN("abc") // true |
因此 C 永远不成立。
而 JS 设计里最反人类的一点是:
1 | typeof NaN === "number" // true |
👉 结论:
NaN 是 number,但谁都不等
