ASP.NET 不加载 CSS 文件
Posted
技术标签:
【中文标题】ASP.NET 不加载 CSS 文件【英文标题】:ASP.NET Not loading CSS files 【发布时间】:2021-05-23 17:02:18 【问题描述】:我有问题。 我有一个带有链接的 CSS 文件的 asp.net 网络表单。 网络表单与母版页相连。
母版页具有(页眉、页脚和主要 CSS 文件) Web 表单页面有(产品网格 CSS 文件)页眉、页脚和主 CSS 文件已成功加载到 Web 表单页面中,但是,链接在 Web 表单头标签内的 product-grid CSS 与其他 CSS 文件根本没有加载。 *我在提交问题之前尝试在此处寻找解决方案,但没有任何任务解决了我的问题。* 内部造型作品 母版页头标记
<head runat="server">
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- Required meta tags -->
<!-- Bootstrap CSS -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/css/bootstrap.min.css" rel="stylesheet" />
<!-- Bootstrap CSS -->
<!-- Needed CSS files -->
<!-- main CSS -->
<link href="/assets/css/main/main.css" rel="stylesheet" type="text/css">
<!-- Header and Footer CSS file-->
<link href="/assets/css/main/HeadFoot.css" rel="stylesheet" type="text/css">
<asp:ContentPlaceHolder ID="head" runat="server">
</asp:ContentPlaceHolder>
<!-- Needed CSS files -->
<!-- Jquery -->
<script src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
<!-- Font awesome -->
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.15.2/css/all.css" />
<!-- Favicon -->
<link rel="shortcut icon" type="image/x-icon" href="/assets/images/favicon_red_64x64.png" />
<title>
<asp:ContentPlaceHolder ID="title" runat="server"></asp:ContentPlaceHolder>
</title>
</head>
Web 表单头标签(母版页的内容占位符 cuz)
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
<!-- prodcuts grid -->
<link href="../assets/css/main/products-grid.css" rel="stylesheet" type="text/css" />
</asp:Content>
【问题讨论】:
【参考方案1】:链接是相对于它所包含的页面,而不是来自母版页本身,但是如果您的母版页中的链接有效,但您的内容页中的链接无效,那么您可能有一个相对页面参考问题。您需要从<link href="../assets/css/main/products-grid.css" rel="stylesheet" type="text/css" />
中删除..
,使其具有与母版页中包含的相同的相对路径。
更好的是,在 css 的任何地方都使用应用程序相关语法:
<link href="~/assets/css/main/products-grid.css" rel="stylesheet" type="text/css" />
【讨论】:
然后你需要打开开发者工具,当你导航到页面时查看网络选项卡,看看你的页面请求时得到什么类型的响应。是404错误吗?不是要求吗?当您查看呈现的 html 页面的源代码时,它会显示吗? 两者都不是,我现在想通了。我想在链接 href 中添加类似 version=1 的内容【参考方案2】:卸载CSS的href链接应该是这样的
<link href="/assets/css/main/products-grid.css?Version=1" rel="stylesheet" type="text/css" />
【讨论】:
以上是关于ASP.NET 不加载 CSS 文件的主要内容,如果未能解决你的问题,请参考以下文章
ASP.NET - IIS 7 - DotNetNuke - 如何强制浏览器重新加载站点的 CSS?