SharePoint Foundation 2013 - 链接网站集中的CSS文件

时间:2014-03-28 04:27:18

标签: css sharepoint sharepoint-2013

我遇到了在母版页中链接我的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

请你帮我解决这个问题。

谢谢

3 个答案:

答案 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="&lt;% $SPUrl:~sitecollection/images/MyFolder/css/styles.css %&gt;" 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>