CSS 的 background-size

2015/03/21 | 1分钟阅读 | 更新于 2015/03/21

刚试着去弄一个大图背景出来,css中这样规定

background: url("./bg.jpg");

可是图片怎么居中?怎么缩放?我用的编辑器是Brackets,我就一边敲backgroun…一边看提示,看到了background-size,跑出去一搜,回来做了个实验验证了一下

从上到下依次是

  • 一张原版图片(缩放后)
  • background-size: auto;
  • background-size: contain;
  • background-size: cover;

然后得到的效果依次是

  • 原图
  • 背景图片不缩放
  • 背景图片适应div宽高(会失真)
  • 背景图片居中,优先适应短边

明显第三个适合之前的要求


兼容IE9+,别的浏览器现在的版本基本上没问题

附测试的代码

图片自己替换一个吧

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
  <head>
    <style>
      div,
      body {
        margin: 0px;
        padding: 0px;
        background-color: #66aadd;
      }
      div.box {
        width: 100%;
        height: 100%;
      }
      img {
        display: block;
        max-width: 400px;
        max-height: 300px;
        text-align: center;
        margin: 10px auto;
      }
      div.s {
        width: 400px;
        height: 300px;
        margin: 10px auto;
        background: url("./bg.jpg");
      }
      div#a {
        background-size: auto;
      }
      div#b {
        background-size: contain;
      }
      div#c {
        background-size: cover;
      }
    </style>
  </head>

  <body>
    <div class="box">
      <img src="./bg.jpg" />
      <div class="s" id="a"></div>
      <div class="s" id="b"></div>
      <div class="s" id="c"></div>
    </div>
  </body>
</html>

© 2026 香蕉引擎故障报告

🌱 Powered by Hugo with theme Dream.

关于

要怎么介绍自己呢,🤔。

很早以前是作为 Web 前端在学习的,但是工作第一年就成为了全干工程师。喜欢尝试各种东西,什么都会一点。

一直很喜欢 Ebiten 游戏引擎 ,特别简洁,用它做过一些小东西,可以查看这个分类 。另外特别推荐这个木鱼 ,是一个相对完整的小玩意儿,包含手搓的一个简单的 UI 框架;支持鼠标和键盘操作;有多语言和主题切换功能;同时支持 Web 端和客户端。它的源代码在 bin16/wooden-fish

主题

网站基于 Hugo,当前使用的是 hugo-theme-dream 主题的修改版 ,根据我的需要,做了一些对 PaperMod 的兼容。

我自己也写过主题 ,但是没有别人写的好看。

正在从我的笔记中往外搬运内容

等待更新:

  • 从《锈湖》中学了些什么东西
  • 我拿 React 写解谜游戏的经过
  • 基于 Pocketbase 的 Pocket Memos
  • 数独!