Menu
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

CSS 教程

CSS 主页 CSS 简介 CSS 语法 CSS 选择器 CSS 如何使用 CSS 注释 CSS 颜色 CSS 背景 CSS 边框 CSS 外边距 CSS 内边距 CSS 高度/宽度 CSS 盒模型 CSS 轮廓 CSS 文本 CSS 字体 CSS 图标 CSS 链接 CSS 列表 CSS 表格 CSS 显示 CSS 最大宽度 CSS 定位 CSS Z-index CSS 溢出 CSS 浮动 CSS 行内块 CSS 对齐 CSS 组合器 CSS 伪类 CSS 伪元素 CSS 透明度 CSS 导航栏 CSS 下拉菜单 CSS 图片库 CSS 图片精灵 CSS 属性选择器 CSS 表单 CSS 计数器 CSS 网站布局 CSS 单位 CSS 特定性 CSS !important CSS 数学函数

CSS 高级

CSS 圆角 CSS 边框图片 CSS 背景 CSS 颜色 CSS 颜色关键词 CSS 渐变 CSS 阴影 CSS 文本效果 CSS 网页字体 CSS 2D 变换 CSS 3D 变换 CSS 过渡 CSS 动画 CSS 工具提示 CSS 样式图片 CSS 图片反射 CSS object-fit CSS object-position CSS 遮罩 CSS 按钮 CSS 分页 CSS 多列 CSS 用户界面 CSS 变量 CSS @property CSS 盒子大小 CSS 媒体查询 CSS 媒体查询示例 CSS Flexbox

CSS 响应式

RWD 简介 RWD 視窗 RWD 网格视图 RWD 媒体查询 RWD 图片 RWD 视频 RWD 框架 RWD 模板

CSS 网格

网格简介 网格容器 网格项目

CSS SASS

SASS 教程

CSS 示例

CSS 模板 CSS 示例 CSS 编辑器 CSS 代码片段 CSS 问答 CSS 练习 CSS 网站 CSS 面试准备 CSS 集训营 CSS 证书

CSS 参考

CSS 参考 CSS 选择器 CSS 函数 CSS 参考听觉 CSS 网页安全字体 CSS 可动画 CSS 单位 CSS PX-EM 转换器 CSS 颜色 CSS 颜色值 CSS 默认值 CSS 浏览器支持

响应式网页设计 - 图片


调整浏览器窗口大小,看看图片如何缩放以适应页面。


使用 width 属性

如果 width 属性设置为百分比,而 height 属性设置为 "auto",图片将具有响应性,并进行向上和向下缩放

示例

img {
  width: 100%;
  height: auto;
}
自己尝试一下 »

请注意,在上面的示例中,图片可以放大到比其原始大小更大的尺寸。在许多情况下,更好的解决方案是使用 max-width 属性。


使用 max-width 属性

如果 max-width 属性设置为 100%,图片将在必要时缩小,但绝不会放大到比其原始大小更大的尺寸

示例

img {
  max-width: 100%;
  height: auto;
}
自己尝试一下 »

在示例网页中添加图片

示例

img {
  width: 100%;
  height: auto;
}
自己尝试一下 »


背景图片

背景图片也可以响应调整大小和缩放。

这里我们将展示三种不同的方法

1. 如果 background-size 属性设置为 "contain",背景图片将进行缩放,并尝试适应内容区域。但是,图片将保持其纵横比(图片宽度和高度之间的比例关系)


以下是 CSS 代码

示例

div {
  width: 100%;
  height: 400px;
  background-image: url('img_flowers.jpg');
  background-repeat: no-repeat;
  background-size: contain;
  border: 1px solid red;
}
自己尝试一下 »

2. 如果 background-size 属性设置为 "100% 100%",背景图片将拉伸以覆盖整个内容区域


以下是 CSS 代码

示例

div {
  width: 100%;
  height: 400px;
  background-image: url('img_flowers.jpg');
  background-size: 100% 100%;
  border: 1px solid red;
}
自己尝试一下 »

3. 如果 background-size 属性设置为 "cover",背景图片将进行缩放以覆盖整个内容区域。请注意,"cover" 值会保持纵横比,背景图片的一部分可能会被剪切掉


以下是 CSS 代码

示例

div {
  width: 100%;
  height: 400px;
  background-image: url('img_flowers.jpg');
  background-size: cover;
  border: 1px solid red;
}
自己尝试一下 »

为不同设备使用不同的图片

一张大图片在大的电脑屏幕上可能很完美,但在小的设备上却毫无用处。为什么要加载一张大图片,然后再将其缩小呢?为了减少负载,或出于任何其他原因,您可以使用媒体查询在不同的设备上显示不同的图片。

这里有一张大图片和一张小图片,它们将在不同的设备上显示

示例

/* 对于小于 400px 的宽度: */
body {
  background-image: url('img_smallflower.jpg');
}

/* 对于 400px 及更大的宽度: */
@media only screen and (min-width: 400px) {
  body {
    background-image: url('img_flowers.jpg');
  }
}
自己尝试一下 »

您可以使用媒体查询 min-device-width 代替 min-width,它会检查设备宽度而不是浏览器宽度。然后,当您调整浏览器窗口大小时,图片就不会改变

示例

/* 对于小于 400px 的设备: */
body {
  background-image: url('img_smallflower.jpg');
}

/* 对于 400px 及更大的设备: */
@media only screen and (min-device-width: 400px) {
  body {
    background-image: url('img_flowers.jpg');
  }
}
自己尝试一下 »

HTML <>picture<> 元素

HTML <picture> 元素为网页开发者提供了更多灵活性来指定图片资源。

<picture> 元素最常见的用途是响应式设计中使用的图片。与其使用一张根据视窗宽度进行放大或缩小的图片,不如设计多张图片,以更好地填充浏览器视窗。

<picture> 元素的工作方式类似于 <video><audio> 元素。您设置不同的源,第一个符合偏好的源将被使用

示例

<picture>
  <source srcset="img_smallflower.jpg" media="(max-width: 400px)">
  <source srcset="img_flowers.jpg">
  <img src="img_flowers.jpg" alt="Flowers">
</picture>
自己尝试一下 »

srcset 属性是必需的,它定义了图片的源。

media 属性是可选的,它接受你在 CSS @media 规则 中找到的媒体查询。

你应该也为不支持 <picture> 元素的浏览器定义一个 <img> 元素。


×

Contact Sales

If you want to use W3Schools services as an educational institution, team or enterprise, send us an e-mail:
[email protected]

Report Error

If you want to report an error, or if you want to make a suggestion, send us an e-mail:
[email protected]

W3Schools is optimized for learning and training. Examples might be simplified to improve reading and learning. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. While using W3Schools, you agree to have read and accepted our terms of use, cookie and privacy policy.

Copyright 1999-2024 by Refsnes Data. All Rights Reserved. W3Schools is Powered by W3.CSS.