【发布时间】:2019-05-28 11:22:34
【问题描述】:
在我的一些页面上,我包含了引导程序。
现在在一页上,我有一个警报,由引导程序设置样式。
定义就这么简单:
$('#wrongPasswordDiv').html('<br/><div class="alert alert-danger" id="wrongPWAlert" role="alert">Falsches Passwort. Bitte erneut versuchen!</div>');
此外,之前还包含 Bootstrap css 文件:
<link rel="stylesheet" type="text/css" href="/bootstrapcss" />
bootstrapcss 被路由到正确的 css 文件。
在网络选项卡中,您可以看到加载引导程序工作正常:
而且,您也可以看到,即使它正在加载,也没有应用任何类。
现在,如果我将 bootstrap 的包含更改为 CDN,它就可以正常工作,并且可以完美应用这些类。
现在我不知道问题出在哪里,因为如您所见,引导程序正在加载,并且在这两种情况下,它都在加载,但只有从 CDN 加载时,才会应用样式。
有什么想法吗?
编辑:尝试后,如果我通过直接链接而不是通过路由器加载 CSS,它就可以工作。在另一个文件中,同一行工作正常,因此路由似乎工作正常(您可以看到,文件也已加载)
【问题讨论】:
-
我猜这是由于
Content-type: text/css标头,比如这个问题:CSS files ignored when using HTML5 doctype -
你说得对,控制台说
Resource interpreted as Stylesheet but transferred with MIME type text/html: "http://localhost/bootstrapcss"..... 那我该如何手动设置内容类型呢?` -
@Kobi 当我删除
DOCTYPE时,css 似乎已正确加载,即使控制台中的警告仍然存在 -
您需要将 HTTP 标头添加为路由的一部分,这取决于您的服务器。如果您使用静态文件主机和 .css 文件和 url,它可能会自动工作。
-
我找不到使用
AltoRouter发送 HTTP 标头的方法,这是我正在使用的路由插件...我可能会使用它的完整路径或删除 DOCTYPE那么
标签: html css twitter-bootstrap bootstrap-4