【CSS基础】背景图片定位

1,203 阅读3分钟

这是我参与8月更文挑战的第31天,活动详情查看:8月更文挑战

作者:battleKing
仓库:GithubCodePen
博客:CSDN掘金
反馈邮箱:myh19970701@foxmail.com
特别声明:原创不易,未经授权不得转载或抄袭,如需转载可联系笔者授权

背景

在学习 CSS 的过程中,大家肯定会遇到一个背景图片不知道 如何快速定位 的问题,但是大部分基础的 CSS 教程并没有提及如何解决这个问题,所以今天我们就通过这一篇文章快速解决这一问题。

相关知识

首先我们先来介绍一下 哪些 CSS 属性背景图片 密切相关。

1. background-image 属性

background-image 属性是用来引入背景图片的。

background-image: url('https://lf3-cdn-tos.bytescm.com/obj/static/xitu_juejin_web/6bdafd801c878b10edb5fed5d00969e9.svg')

2. background-repeat 属性

background-repeat 属性是规定如何重复背景图像,一般设置为 no-repeat

  • 可选值 值 | 描述 | | --------- | --------------------- | | repeat | 默认。背景图像将在垂直方向和水平方向重复。 | | repeat-x | 背景图像将在水平方向重复。 | | repeat-y | 背景图像将在垂直方向重复。 | | no-repeat | 背景图像将仅显示一次。
background-repeat: no-repeat;

3. background-size 属性

background-size 属性规定背景图片的尺寸

  • 可选值 值 | 描述 | | ------------ | ------------------------------------------------------------------- | | length | 设置背景图像的高度和宽度。第一个值设置宽度,第二个值设置高度。如果只设置一个值,则第二个值会被设置为 "auto"。| | percentage | 以父元素的百分比来设置背景图像的宽度和高度。第一个值设置宽度,第二个值设置高度。如果只设置一个值,则第二个值会被设置为 "auto"。 | | cover | 把背景图像扩展至足够大,以使背景图像完全覆盖背景区域。背景图像的某些部分也许无法显示在背景定位区域中。 | | contain | 把图像图像扩展至最大尺寸,以使其宽度和高度完全适应内容区域。

3. background-position 属性

background-position 属性规定背景图像的位置

background-position 属性的三个属性值对应的就是背景图片定位的三种方法

  1. 关键字:background-position: top right bottom left;

  2. 像素:background-position: 0px 0px;

  3. 百分比:background-position: 0% 0%;

关键字

background-position 后面的 top、right、bottom、left 表示的都是背景图片紧贴容器某条边。

最常见的是background-position: top left; 表示背景图片定位在容器的左上角

像素

background-position 后面的第一个 px 表示背景图片相对于容器左上角的水平方向偏移量,第二个 px 表示背景图片相对于容器左上角的竖直方向偏移量。

最常见的就是 background-position: 0px 0px; 表示背景图片定位在容器的左上角

百分比

background-position 后面两个 x%,y% 表示背景图片本身相对于左上角水平方向偏移 x%,垂直方向偏移 y% 的点与背景图片的容器相对于左上角水平方向偏移 x%,垂直方向偏移 y% 的点重合对齐

假设 background-position: 20% 20%; 图片定位.png

总结

  1. background-position: 0px 0px; 并不能根据窗口大小自适应。
  2. background-position: top leftbackground-position: x% y% 的优势是背景图片可以根据窗口的大小,自动适应。
  3. 所以我们应该 根据具体情况来选择哪一种方式 来定位图片。

❤️ 感谢大家

如果本文对你有帮助,就点个赞支持下吧,你的「赞」是我创作的动力。

如果你喜欢这篇文章的话,可以「点赞」 + 「收藏」 + 「转发」 给更多朋友。