You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

背景过渡用SVG波形无法拉伸至全屏宽度,设100%仅居中如何解决

SVG波浪无法拉伸满屏的解决方法

根因分析

SVG默认自带的preserveAspectRatio属性默认值为xMidYMid meet,该属性会强制保持SVG的原始宽高比,将图形居中展示在容器内,不会出现拉伸变形。这就是你设置width:100%后图形仅居中、无法填充满宽度的原因。

修复方案

给<svg>标签添加preserveAspectRatio="none"属性,关闭宽高比锁定,允许SVG拉伸适配容器的尺寸,同时给SVG补充width: 100%的样式即可。

修复后代码

<div class="waves" style="height: 244px;width: 100%;overflow-x: hidden;">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1440 320" preserveAspectRatio="none" style="display:block;height:100%;width: 100%;">
    <path fill="#36393D" fill-opacity="1" d="M0,192L18.5,202.7C36.9,213,74,235,111,202.7C147.7,171,185,85,222,74.7C258.5,64,295,128,332,176C369.2,224,406,256,443,234.7C480,213,517,139,554,128C590.8,117,628,171,665,181.3C701.5,192,738,160,775,128C812.3,96,849,64,886,85.3C923.1,107,960,181,997,186.7C1033.8,192,1071,128,1108,85.3C1144.6,43,1182,21,1218,64C1255.4,107,1292,213,1329,250.7C1366.2,288,1403,256,1422,240L1440,224L1440,320L1421.5,320C1403.1,320,1366,320,1329,320C1292.3,320,1255,320,1218,320C1181.5,320,1145,320,1108,320C1070.8,320,1034,320,997,320C960,320,923,320,886,320C849.2,320,812,320,775,320C738.5,320,702,320,665,320C627.7,320,591,320,554,320C516.9,320,480,320,443,320C406.2,320,369,320,332,320C295.4,320,258,320,222,320C184.6,320,148,320,111,320C73.8,320,37,320,18,320L0,320Z"
style="height:100%;width:100%;display:block;"></path>
  </svg>
</div>

修改后不管是小屏还是桌面端大屏场景,SVG都会自动拉伸填充满外层容器的全部可用宽度,实现目标波浪过渡效果。

内容的提问来源于stack exchange,提问作者HamsterRecords

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 19:39:00