我试图放置一个background-image,它应该垂直重复并水平拉伸,但保持其高度与原始svg相同.

我试图修复background-size: 100% 33px;,但原始高度没有保留.

所有.child个容器的高度应相同,并且应拉伸到其父容器.

以下是我的try

  background-size: 100% 33px;  // TO FIX SIZE
  background-repeat: repeat-y; // REPEAT ONLY THROUGH Y

CODESANDBOX LINK FOR TRY

* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

div {
  border: 5px solid indianred;
}

.parent {
  height: 100vh;
  background-color: grey;
  display: flex;
}

div.child {
  background-image: url("https://assets-marvin.leadsquared.com/smartviews/images/column.svg");
}

.child:nth-child(1) {
  flex: 1;
}

.child:nth-child(2) {
  flex: 2;
  background-size: 100% 33px;
  background-repeat: repeat-y;
}

.child:nth-child(3) {
  flex: 3;
  background-size: 100%;
}
<div class="parent">
  <div class="child"></div>
  <div class="child"></div>
  <div class="child"></div>
</div>

推荐答案

您需要编辑SVG并添加preserveAspectRatio="none"

* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

div {
  border: 5px solid indianred;
}

.parent {
  height: 100vh;
  background-color: grey;
  display: flex;
}

div.child {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="200" height="32.5" viewBox="0 0 200 32.5" preserveAspectRatio="none"><g id="Group_15" data-name="Group 15" transform="translate(10981 1350)"><g id="Group_11" data-name="Group 11" transform="translate(-10981 -1350)"><rect id="Rectangle_43" data-name="Rectangle 43" width="200" height="31.5" fill="%23fff"/><rect id="Rectangle_44" data-name="Rectangle 44" width="176" height="20" rx="1" transform="translate(12 5.897)" fill="%23f2f2f2"/></g><line id="Line_1" data-name="Line 1" x2="200" transform="translate(-10981 -1318)" fill="none" stroke="%23ccd3da" stroke-width="1"/></g></svg>');
  background-size: 100% 33px;
  background-repeat: repeat-y;
}

.child:nth-child(1) {
  flex: 1;
}

.child:nth-child(2) {
  flex: 2;
}

.child:nth-child(3) {
  flex: 3;
}
<div class="parent">
  <div class="child"></div>
  <div class="child"></div>
  <div class="child"></div>
</div>

Html相关问答推荐

如何访问django + tailwind中的媒体文件夹

使用固定的HTML代码创建两个可向右滚动的行

Blazor中有1像素高行的表格

NG8004:找不到名为""的管道.'' [插件Angular 编译器]

试图让三个Divs与下面的另外三个对齐

CSS:显示块,第一个项目没有正确对齐

如何将FlexBox项目zoom 到其包含图像的大小

Angular Project中的星级 Select

动态FormControl值在Angular 上绑定错误的问题

如何修复与导航栏重叠的css网格?

正文不能填满浏览器100%的高度

带有MathJax SVG的HTML代码在XHTML中不起作用

MatSnackBar: colored颜色 不起作用

天使17:令人惊叹的动画

响应网格,响应调整大小以适应父div,保留父div S自己的响应高度

SVG 填充 colored颜色 不使用轮廓填充空白区域

为什么使用 Css 只能看到 1 列而不是 3 列?

在 vscode 中找不到 htmltagwrap 命令

我应该如何使这个带有标签的隐藏复选框可访问

自定义进度条 Html 和 CSS 布局