爱好其实是一种惩罚
纪念我的放肆-消失的那么快
当前位置:首页 教学教程 > CSS 图片完整设置指南(最全常用属性 + 实用场景 + 避坑技巧)

CSS 图片完整设置指南(最全常用属性 + 实用场景 + 避坑技巧)

作者:冲灵 发布时间:2026-01-12 15:11 分类: 教学教程 浏览:5 评论:0


导读:你需要掌握 CSS 中对图片的所有核心设置方法,包括图片尺寸、适应容器、居中对齐、边框圆角、阴影、裁剪、平铺、背景图等,这份指南会把最常用、最实用的图片 CSS 设置全部整理好,所...
你需要掌握 CSS 中对图片的所有核心设置方法,包括图片尺寸、适应容器、居中对齐、边框圆角、阴影、裁剪、平铺、背景图等,这份指南会把最常用、最实用的图片 CSS 设置全部整理好,所有代码可直接复制使用 ✅
压缩后的图片

一、基础必备:图片的尺寸与拉伸控制(最常用)

1. 基础宽高设置(固定尺寸)

直接用 width / height 设置图片尺寸,单位推荐 px(固定像素)%(父容器占比)
 
/* 固定尺寸 */
img {
  width: 300px;
  height: 200px;
}
/* 自适应父容器宽度,高度自动 */
img {
  width: 100%;
  height: auto; 
}
✅ 核心建议:只设置一个维度,另一个写 auto,能保证图片「等比例缩放」,不会拉伸变形!

2. 核心属性:object-fit 控制图片填充方式(解决拉伸 / 留白)

场景:当图片的原始宽高比例 和 我们设置的 width/height 比例不一致时,图片会「拉伸变形」或「留白」,object-fit 专门解决这个问题,必学属性
 
✅ 生效前提:必须给图片设置 width + height 固定尺寸
object-fit 有 5 个核心取值,按使用频率排序:
img {
  width: 300px;
  height: 300px;
  border: 1px solid #eee;
}
/* 1. cover 最常用!铺满容器+裁剪多余部分,不变形(重点推荐) */
.img-cover { object-fit: cover; }
/* 2. contain 完整显示图片+不变形,容器会留白(适合logo/图标/完整展示图) */
.img-contain { object-fit: contain; }
/* 3. fill 默认值,拉伸填满容器,会变形(不推荐) */
.img-fill { object-fit: fill; }
/* 4. none 保持图片原始尺寸,超出容器部分裁剪 */
.img-none { object-fit: none; }
/* 5. scale-down 自动在 contain/none 中选最优,尽量小的完整显示 */
.img-scale { object-fit: scale-down; }
✅ 搭配属性:object-position: center; (默认值),控制图片裁剪时的「显示区域」,比如 object-position: top; 只显示图片顶部,object-position: left; 只显示左侧。

二、图片的边框、圆角、阴影、透明度(美化必备)

这几个属性是图片美化的高频用法,语法简单,兼容性 100%,无脑用即可

1. 圆角设置 border-radius

可以让图片变成「圆角图」「圆形图」,单位支持 px / %
/* 圆角图片 */
img { border-radius: 8px; }
/* 完美圆形图片 ✅ 必学:前提是图片宽高相等 + 圆角50% */
.img-circle {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  object-fit: cover; /* 圆形图必加,防止变形 */
}
补充:border-radius 还能设置四角不同圆角 border-radius: 10px 20px 30px 40px;(左上、右上、右下、左下)

2. 边框设置 border

给图片加边框,区分内容,可搭配 padding 加内边距
img {
  border: 2px solid #0099ff; /* 宽度 样式 颜色 */
  padding: 5px; /* 边框和图片之间的间距 */
}
/* 去掉图片默认边框(图片做a链接时会出现蓝色边框,必清) */
img { border: none; outline: none; }

3. 阴影设置 box-shadow

给图片加「立体阴影」,提升视觉效果,可加多层阴影
/* 基础阴影:x偏移 y偏移 模糊度 阴影大小 阴影颜色 */
img {
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}
/* 深色立体阴影(卡片风格) */
.img-shadow {
  box-shadow: 0 4px 12px rgba(0,0,0,0.2);
}

4. 透明度设置 opacity

控制图片的透明程度,取值 0~1 之间,0=完全透明1=不透明
/* 半透明图片 */
img { opacity: 0.6; }
/* 鼠标悬浮时恢复不透明(常用交互效果) */
img:hover { opacity: 1; transition: all 0.3s; }

三、图片的对齐与居中(布局高频需求)

✅ 情况 1:img 标签的图片 水平居中(最简单,99% 场景用这个)

img 是行内块元素 (inline-block),给它的「父容器」加一行代码即可:
.parent { /* 图片的父盒子 */
  text-align: center;
}

✅ 情况 2:img 标签的图片 水平 + 垂直 居中(万能居中方案)

推荐 2 种最稳定的方案,任选其一,无兼容性问题:

方案 A:flex 弹性布局(推荐,代码最少,现代开发首选)

.parent { /* 父容器 */
  width: 500px;
  height: 400px;
  display: flex;          /* 开启flex */
  justify-content: center;/* 水平居中 */
  align-items: center;    /* 垂直居中 */
}
.parent img {
  width: 200px;
}

四、背景图片(background)的核心设置

除了用 <img> 标签插入图片,CSS 的 background 背景图也超级常用(比如装饰图、全屏图、按钮背景等),两者的区别:
  • <img> 标签:用于内容型图片(比如文章配图、产品图、用户头像,页面核心内容)
  • background:用于装饰型图片(比如页面背景、卡片底纹、图标,非核心内容)

🔥 背景图核心必学属性(组合使用,缺一不可)

.box {
  width: 100%;
  height: 300px; /* 背景图生效前提:盒子必须有宽高!! */
  /* 1. 设置背景图地址 */
  background-image: url("./images/bg.jpg");
  /* 2. 是否平铺(必设,默认会平铺整个盒子) */
  background-repeat: no-repeat; /* 不平铺 ✅ 最常用 */
  /* 可选值:repeat(默认平铺) | repeat-x(水平平铺) | repeat-y(垂直平铺) */
  /* 3. 背景图位置(水平 垂直),默认左上角 */
  background-position: center center; /* 居中显示 ✅ 最常用 */
  /* 4. 背景图尺寸(控制填充方式,和img的object-fit类似) */
  background-size: cover; /* 铺满盒子+裁剪多余,不变形 ✅ 最常用 */
  /* 可选值:contain(完整显示+留白) | 100% 100%(拉伸变形) | 300px 200px(固定尺寸) */
}

✅ 背景图简写语法(推荐,一行写完,省代码)

.box {
  width: 100%;
  height: 300px;
  /* 顺序:图片地址 → 平铺 → 位置 → 尺寸 */
  background: url("./images/bg.jpg") no-repeat center / cover;
}

五、图片的裁剪、缩放、禁止拖动(实用小技巧)

1. 图片裁剪(隐藏超出部分)

当图片尺寸超过父容器,又不想缩放时,用 overflow: hidden 裁剪多余部分,常和圆角 /hover 效果搭配
.parent {
  width: 200px;
  height: 200px;
  border-radius: 50%;
  overflow: hidden; /* 超出的图片部分隐藏,实现圆形裁剪 */
}
.parent img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

2. 图片缩放(鼠标悬浮放大,常用交互)

transform: scale() 实现缩放,不会改变图片的实际占位,不会影响布局 ✅
img {
  transition: all 0.3s; /* 过渡动画,放大更丝滑 */
}
img:hover {
  transform: scale(1.05); /* 放大1.05倍 */
  /* transform: scale(0.95); 缩小到0.95倍 */
}

3. 禁止图片被拖动 / 选中(防误操作,提升体验)

浏览器中,图片默认可以被鼠标拖动,加上以下代码即可禁止:
img {
  user-select: none; /* 禁止选中 */
  pointer-events: none; /* 禁止鼠标事件(可选) */
  -webkit-user-drag: none; /* 禁止拖动(webkit内核浏览器,Chrome/Safari) */
}

✨ 总结(CSS 图片核心知识点速记)

  1. 图片尺寸:width/height + auto 保证等比缩放,object-fit 解决填充适配问题;
  2. 图片美化:border-radius(圆角) + box-shadow(阴影) + opacity(透明度) 三板斧;
  3. 图片居中:<img>text-align:center 水平居中,flex 实现万能水平垂直居中;
  4. 背景图片:必须给盒子设宽高,核心组合 no-repeat + center + cover
  5. 实用技巧:overflow:hidden 裁剪、transform:scale() 缩放、禁止拖动提升体验;
  6. 避坑核心:不等比缩放必变形,背景图无宽高必不显示,圆形图必设等宽高。
×

如果觉得文章对您有用,请随意打赏。
您的支持是我们继续创作的动力!

微信打赏

微信扫一扫

支付宝打赏

支付宝扫一扫

手机扫码阅读

标签:


发表评论:

教学教程排行