如何通过CSS拉伸背景图像/图像来填充容器?

use*_*263 6 html css svg background-image

我有一个比例矢量图像,我希望它填充一个容器.关于SO有几个这样的问题,尽管它们有点老了.例如,拉伸和缩放CSS背景

但是,当我试图实施这样的解决方案时,结果令人失望.

例如:

    body  {

    margin: 0; 
    padding: 0;
    text-align: center; 
    color: #000;
    background-color: #000
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 100%;

}

...

.twoColLiqLtHdr #container {
    width: 80%;
    margin: 0 auto; 
    border: 2px solid #000000;
    text-align: left; 
    background-color: #003;
    background-image: url('background_image.svg'); 
    /*background-position: 80% 80%; */

  background-repeat: no-repeat; 
    color: #000;
    font-family: "Times", cursive;


    background-attachment:fixed;
    min-height:100%;
    /*top: 0;
    left: 0; */



} 
Run Code Online (Sandbox Code Playgroud)

我已经尝试过各种各样的安排,但我不能让它伸展而不留空白区域(重复是成功的,但看起来很可怕).

但是,由于我正在使用svg我可能以错误的方式接近这个,我应该在html中使用svg xmlns标签吗?(PS我知道IE8绝对无法处理svgs)

Gio*_*ona 19

你有没有尝试过

background-size:cover;
Run Code Online (Sandbox Code Playgroud)

查看一些例子.

我遇到了webkit background-size:cover和SVG背景图片的问题.我解决了这个问题

-webkit-background-origin:border;
Run Code Online (Sandbox Code Playgroud)


Rob*_*son 11

您可能需要添加preserveAspectRatio ="none"作为<svg>SVG图像本身中外部元素的属性.

如果您不想修改图像文件,那么您可以尝试

background-image:url('background_image.svg#svgView(preserveAspectRatio(none))');

Firefox 15也支持这个以及其他UA.