跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客我的书AI学习GitHub 精选镜像AI 生图工具UI配色美学关于
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
HTML / CSS大前端

CSS 基础:width 与 height 尺寸属性详解

CSS 宽度(width)和高度(height)属性用于设置元素的内容区域尺寸,控制页面中的水平和垂直空间。支持的属性值包括像素(px)、百分比(%)、继承(inherit)、自动(auto)以及视口单位(vw、vh)。max-width、min-width 等属性可限制元素的最大或最小尺寸,确保内容可见性并辅助响应式布局。需注意这些属性仅定义内容区域,不包括内边距、边框或外边距。

www发布于 2025/1/21更新于 2026/10/480 浏览
CSS 基础:width 与 height 尺寸属性详解

前言

在 CSS 中,宽度(width)和高度(height)属性用于设置元素的尺寸,控制元素在页面中所占的水平和垂直空间。我们在之前的文中,已多次用到,今天来细致聊一下它的更多用法。

宽/高度属性值类型

CSS 中的宽度和高度属性值可以设置的类型包括:

1. 像素(px):指定具体的像素值作为宽度或高度。

2. 百分比(%):相对于父元素的百分比来设置宽度或高度。

3. inherit(继承):表示元素将继承父元素的宽度或高度值。这个用的不多。

4. auto(自动):表示元素的宽度或高度将根据内容自动调整。对于宽度属性,大多用在自适应布局中,特别是对于一些动态内容或者需要根据内容自动调整大小的元素。

5. 视窗单位(vw、vh):这是 CSS3 里面的属性也稍微提一下,这个是相对于视口大小的单位,vw 表示视口宽度的百分比,vh 表示视口高度的百分比。例如,50vh,就代表可视窗口 50% 的高度。

以下代码,展示了一个元素的宽度使用百分比(50%)和高度使用像素(200px)的情况:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Width and Height Example</title>
<style>
.box {
width: 50%;
height: 200px;
background-color: #98b1f1;
}
</style>
</head>
<body>
<div class="box">这是一个示例文本框,宽度为父元素宽度的 50%,高度为固定的 200px。


</div>
</body>
</html>

其他的属性,你可以自行改宽高的属性值尝试一下。需要注意的是:height 和 width 属性用于设置元素内容区域的高度或宽度,并不包括内边距、边框或外边距在内。

换句话说,它们定义了元素内容区域的尺寸,而不是整个元素所占据的实际空间,关于内边距 padding 增加了元素高度的情况,上篇文已经说了,不了解可以回头看看。

最大/最小属性值

CSS 中的 max-width、min-width、max-height 和 min-height 属性可以用来设置元素的最小宽度和高度以及最大宽度和高度。

这些属性可以用于限制元素的最大和最小尺寸,以防止元素过大或过小。它们可以保证内容可见性,响应式布局,排版控制,限制元素尺寸等好处。

它们的取值除了和上述的宽度高度属性值类型一样外,还有一个 none(默认值,意味着没有最大/最小的宽度/高度)。

那从最简单的,保持内容可见性来说。

以最大宽度这个属性值来举例,当浏览器窗口宽度小于元素的宽度(600px)时,使用 max-width 可以提升浏览器在处理较小窗口时的效果,必要时浏览器会为页面添加水平滚动条以容纳超出的内容,而不是 600px 宽度以后的内容都无法查看了。

好,来看代码。

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
<style>
div {
max-width: 600px;
height: 400px;
background-color: #37dc6b;
}
</style>
</head>
<body>
<div>
<div>内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容 内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内 容内内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容 内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内 容</div>
</div>
</body>
</html>

想要观察这种效果,请将浏览器窗口缩小至小于 600px 宽度,然后比较设置 width 和设置 max-width 情况下的差异。如何缩小浏览器呢?

通过按 F12 打开开发者工具,开启设备模拟模式,然后拖动内容区和开发者工具区的边缘区域调整窗口大小。

需要注意的是:最大宽度会覆盖宽度的值,设置的时候需要注意,二选一。

目录

  1. 前言
  2. 宽/高度属性值类型
  3. 最大/最小属性值

更多推荐文章

查看全部
  • C++ STL 核心基础:迭代器、auto 与范围循环
  • C++ 核心语法解析:引用、内联函数与空指针
  • C++ 使用 AMQP-CPP 库集成 RabbitMQ 消息队列详解
  • C++大模型 SDK 开发:流式交互协议 SSE 解析与 httplib 实现原理
  • Python 强化学习自主迷宫求解:生成、训练与评估
  • Formality 原语(primitive)概念详解
  • Stable Diffusion 本地部署与基础使用指南
  • Spatial Joy 2025 全球 AR&AI 开发大赛参赛指南与避坑攻略
  • 网络安全工程师职业定义、核心技能与主流认证指南
  • STM32 数字万用表 DIY 项目设计与硬件选型
  • EFSI-DETR:用于无人机图像实时小目标检测的高效频域 - 语义集成方法
  • Windows 本地部署 OpenClaw 接入飞书 AI 机器人实战
  • Costmap2d 膨胀层算法:从原理到实践
  • GitHub AI Agent 开源生态概览
  • VR 多相电源架构与选型设计详解
  • 基于 Docker Compose 在 Ubuntu 本地部署 Whisper 语音识别服务
  • LLM Agent 中 RAG 与模型智能的平衡:幻觉检测与校准方案
  • Python 将 Markdown 文件转换为 Word(docx)完整实现
  • 基于 Stable Diffusion 的数据增强实践方案
  • 机器人操作通用单样本多模态主动感知框架:学习预测最优视角

相关免费在线工具

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online

  • Markdown转HTML

    将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online

  • HTML转Markdown

    将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML转Markdown在线工具,online

  • JSON 压缩

    通过删除不必要的空白来缩小和压缩JSON。 在线工具,JSON 压缩在线工具,online

  • JSON美化和格式化

    将JSON字符串修饰为友好的可读格式。 在线工具,JSON美化和格式化在线工具,online