🧩 HTML · CSS

#互联网 #浏览器 #编辑器 #HTML基础 #权值 #选择器 #盒模型 #浮动 #BFC #定位 #flex #grid #响应式

大全宝典:https://www.runoob.com/

📄 HTML 核心

5

<!DOCTYPE html> 声明文档类型 ·
<html> 根元素
<head> 配置 ·
<body> 内容 ·
<meta charset="UTF-8">声明文档的编码格式

单标签: 没有内容
双标签: 开始标签和结束标签之间,可以放内容
   class可重复,id唯一。命名:不能用中文/特殊符号/数字开头。

格式:标签换行,开始标签跟和结束标签要对齐(一条直线)
   子父级之间相差一个tab键

<html>
  <head>
   <title>页面标题</title>
 </head>
<body>...</body>
</html>

⚡ 样式引入 & 优先级

6-1

三种方式: 内联(style属性) / 内部(style标签) / 外部(link)

!important > 内联样式 > ID > 类/伪类 > 标签

权值计算 (1,0,0,0) (0,1,0,0) ... 逐级比较,不进位。
20个类 < 1个ID
注意 通用选择器(*)、组合符不影响优先级。
/* 权值示例 */
#nav { } /* (1,0,0,0) */
.container { } /* (0,1,0,0) */
div { } /* (0,0,1,0) */

🔖 CSS 选择器

11

更多参考 runoob CSS选择器

📦 盒模型 & 默认宽高

10/24

总宽度 = width + 左右padding + 左右border + 左右margin
总高度 = height + 上下padding + 上下border + 上下margin

默认宽度: 块级100%父级;浮动由内容撑开。
默认高度: 由内容+padding决定。

盒模型图解:margin透明 · border · padding · content

📍 位置:margin · padding · position

7

margin 塌陷与合并

padding

会增大宽高,需手动减。

position

🌊 浮动 float & 清除

8/20

float: left/right 让块级元素一行显示,但会造成半脱离(文字环绕)。

.float-box{
 float: left; width: 200px;
}
.normal {
  width: 250px;
} /* 文字环绕 */

清除浮动:

.clearfix::after {
  content: "";
  display: block;
  height: 0;
  clear: both;
}

🧱 BFC 块格式化上下文

9

独立容器,内部不影响外部。可解决margin塌陷、阻止浮动覆盖、包裹浮动高度。

触发BFC(任一)

overflow: hidden/auto/scroll
float: left/right (非none)
position: absolute/fixed
display: inline-block/flex/table-cell

应用: 父级overflow:hidden包裹浮动;右侧盒子触发BFC避免被浮动覆盖(实现自适应)。

BFC阻止浮动覆盖:蓝色触发BFC后与红色互不重叠

🛡️ 防止margin塌陷

21

✒️ display · 居中 · 文字

12-14

display: block/inline/inline-block/none

水平居中

垂直居中

单行文字: line-height = 容器height

文字样式(可继承)

color, font-family, font-size,
font-weight, line-height, opacity

🖱️ 伪类 :hover · a标签

15-16

:hover 鼠标滑过;可控制其他元素 .box:hover .other

a的属性target="_blank" 新标签页打开,
 默认 _self。
href支持绝对/相对路径。

🖼️ 图片两种方式

17

背景图适用:图片可能超出显示器 / 图片内需放置内容。

✨ 边框·圆角·透明·阴影

18-19

📏 百分比 & 单位

22-23

单位: px, em, rem(root em)

🌀 Flex 弹性布局

25

容器设为 display: flex,子项float/clear/vertical-align失效。

容器属性

项目属性

.container {
  display: flex;
}
.item {
  flex-grow: 1;
} /* 占据剩余空间 */

教程:跳转

🧩 Grid 网格布局

新增

CSS Grid 是二维布局系统,可同时控制行与列。容器设为 display: grid

🌐 容器属性

📌 项目属性

/* 简单grid示例 */
.container {
  display: grid;
 grid-template-columns: 1fr 2fr 1fr;
 gap: 12px;
}
.item {
  background: var(--accent);
  padding: 1rem;
}

Grid 与 Flex 可结合使用:外层grid划分大结构,内层flex处理细节排列。

Grid 布局示意图:三列两行,可自由合并单元格

教程:跳转

📺 HTML5 / CSS3 扩展

H5/C3

多媒体

<video src="movie.mp4" controls autoplay loop>
<audio controls><source src="music.mp3">

语义化标签

<header> <footer> <nav> <aside>

CSS3 变换

transform: rotate(deg) translate(px) skew(deg) scale(n) (2D/3D: rotateX, rotateY)

过渡与动画

transition: 属性 时长 · animation

响应式布局

@media screen and (max-width: 300px) {
  body {
  background: lightblue;
 }
}
浮动 BFC 清除浮动 margin塌陷

✔️ 浮动可以让块级一行显示,但需清除。
✔️ BFC触发:overflow, position, display, float
✔️ BFC解决margin塌陷、阻止浮动覆盖、包裹浮动

⚡ 闽ICP备2026005900号-1 ⚡
Easter egg