.NET网页中background-image背景图无法正常显示问题求助
.NET网页背景图片无法显示解决方案
1. 启用静态文件中间件
ASP.NET Core默认不开放项目目录下的静态文件访问权限,需要先在Program.cs(老版本项目为Startup.cs)中注册静态文件中间件,注意配置顺序需放在路由匹配规则之前:
var builder = WebApplication.CreateBuilder(args); var app = builder.Build(); // 必须添加该行启用静态文件访问 app.UseStaticFiles(); app.UseRouting(); // 其余中间件配置 app.Run();
2. 确认图片存放目录符合规范
.NET默认的静态文件根目录为项目根路径下的wwwroot文件夹,你需要将bball.jpg放入该目录中才可直接访问。如果要使用自定义的静态文件夹,需要额外添加配置:
app.UseStaticFiles(new StaticFileOptions { FileProvider = new PhysicalFileProvider( Path.Combine(builder.Environment.ContentRootPath, "你的自定义文件夹名称")), RequestPath = "/自定义访问前缀" });
3. 修正图片路径写法
图片存入wwwroot后,建议直接使用站点根路径写法,避免不同路由层级下相对路径解析错误,修正后的代码如下:
<div class="carousel-inner"> <div class="carousel-item active" style="background-image: url('/bball.jpg');"> <div class="container"> <h1>Example Headline</h1> <p> nionsdof nlsdfn klnsdf nsdklfnklsnfd kln sl;df ;lkfsmdlmsdl;ksm dl;m klms lksfkj sjh skdf jsdkjfn kn kjnsdf kjnsdkn sdfjk nksdf kj s fdkjsdfk jnskdj nskdjnf jknfsdkjnskjdnf ks </p> <a href="#" class="btn btn-lg btn-primary"> Sign up today </a> </div> </div> </div>
4. 确认文件复制配置
在IDE中右键点击bball.jpg文件,打开属性面板,将「复制到输出目录」选项设置为如果较新则复制,避免调试或发布时图片文件未同步到运行目录。
内容的提问来源于stack exchange,提问作者Rahtz
相关产品推荐
相关产品推荐

