我遇到了在母版页中链接我的css文件的问题。
<SharePoint:CssRegistration ID="StyleSheet1" Name="~sitecollection/_catalogs/masterpage/Resources/css/quack_1200.css" After="corev15.css" runat="server" />
<SharePoint:CssRegistration ID="StyleSheet2" Name="~sitecollection/_catalogs/masterpage/Resources/css/main.css" After="corev15.css" runat="server" />
未加载这些文件。当我在浏览器中访问控制台时,它不会显示任何错误,当我调查HTML时,它不会显示CSS文件。
但是,如果我访问URL上的文件,它们确实存在。 这是部署XML定义。
<File Path="Resources\css\main.css" Url="masterpage/Resources/css/main.css" IgnoreIfAlreadyExists="TRUE" Type="GhostableInLibrary" />
<File Path="Resources\css\quack_1200.css" Url="masterpage/Resources/css/quack_1200.css" IgnoreIfAlreadyExists="TRUE" Type="GhostableInLibrary" />
如果我输入整个网址,我就可以访问这些文件了。
的http:// [计算机 名称] /sites/PCF/_catalogs/masterpage/Resources/css/quack_1200.css HTTP:// [计算机 名] /sites/PCF/_catalogs/masterpage/Resources/css/main.css
请你帮我解决这个问题。
谢谢
答案 0 :(得分:1)
问题是CssRegistration不处理~sitecollection标记。
我没有对此进行测试,但尝试添加:
<link rel="stylesheet" type="text/css" href="resources/css/main.css" />
如果你无法弄清楚如何建立你的网址,你总是可以用javascript / jQuery添加css文件。
var linkTag = '<link href="' + _spPageContextInfo.siteAbsoluteUrl + '/_catalogs/masterpage/Resources/css/quack_1200.css" rel="stylesheet" type="text/css"/>';
$(document).ready($('head').append(linkTag);
答案 1 :(得分:0)
您在母版页或html页面中添加css文件的位置?在SP2013中,您无法直接在母版页上进行任何修改。你想做什么,你应该只在html页面做。在html页面中添加如下的css文件。
<link rel="stylesheet" type="text/css" href="../../../../images/MyFolder/css/styles.css" />
如果您保存此html页面并在母版页中看到它将呈现如下
<SharePoint:CssRegistration name="<% $SPUrl:~sitecollection/images/MyFolder/css/styles.css %>" runat="server" after="SharepointCssFile"/>
注意:如果您的更改未应用于母版页,请尝试再次转换关联的html文件。请检查此MSDN Link
答案 2 :(得分:0)
解决:
<link rel="stylesheet" type="text/css" href="Resources/css/quack_1200.css" />
<link rel="stylesheet" type="text/css" href="Resources/css/main.css" />
</head>