【问题标题】:SharePoint: Add custom style to site definitionSharePoint:将自定义样式添加到网站定义
【发布时间】:2011-01-06 01:49:59
【问题描述】:

我正在尝试将自定义 css 文件添加到我的网站定义中,但我遇到了一些问题。我读过我应该把它们放在 12\TEMPLATE\SiteTemplates\TEMPLATENAME\Layouts\1033\STYLE.CSS 但我无法访问位于 /_layouts/1033/Styles/STYLE.CSS 的文件

我是否需要使用功能来添加 STYLE.CSS 文件?我支持我的站点定义,使用此元素文件的功能装订

<?xml version="1.0" encoding="utf-8" ?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
  <Module Name="CustomMasterPages" Url="_catalogs/masterpage" Path="MasterPages" RootWebOnly="FALSE">
    <File Url="Custom.master"
       Name="Custom.master" Type="GhostableInLibrary" >
      <Property Name="ContentType"
         Value="$Resources:cmscore,contenttype_masterpage_name;" />
    </File>     
  </Module>

</Elements> 

如您所见,我在元素文件中添加了Url:_catalogs/masterpage,是否需要对样式文件做类似的事情? 谢谢你

【问题讨论】:

    标签: sharepoint sharepoint-2007


    【解决方案1】:

    您可以轻松地应用 css 样式表来创建自定义站点定义,而无需编辑母版页或影响整个服务器:

    1. 创建一个 .css 样式表(很棒的 css 参考:Heather Solomon
    2. 在网站上存储 .css 文件
    3. 导航到站点操作 > 站点设置
    4. 在外观下,选择母版页
    5. 在备用 CSS URL 部分中,选择“指定一个 CSS 文件供此发布站点和所有从它继承的站点使用”
    6. 浏览到文件在网站上的位置
    7. 点击确定申请

    此文件的内容将通过覆盖定义的类来自定义站点主题 /_layouts/1033/styles/core.css。您未指定的那些类将保持默认定义。

    【讨论】:

      【解决方案2】:

      查看WSPBuilder;它将为您提供一个简单的选项来将文件添加到 12 配置单元(如果您使用的是 Visual Studio)。您不能创建将文件放入 _layouts 文件夹的功能。这只能通过创建 WSP 文件来完成。

      您发布的代码将尝试将文件存储在 _catalogs/masterpage/.. 中,该文件位于“数据库中”而不是文件系统中。 (_layouts 在 12 hive 中,因此在磁盘上)。 这通常不是放置 css 文件的位置,Richard 提到的位置是,虽然我更喜欢将所有站点共享的文件放在 12 hive 中。

      功能装订是更改标准网站模板的好方法。

      【讨论】:

      • 我现在有点困惑。如果我想使用自定义母版页创建自定义站点定义,我应该怎么做?我认为为了创建自定义母版页,我需要使用功能装订。所以我的站点定义存储在 12 个配置单元中,而我的母版页存储在数据库中。
      • 你们俩都帮我解决了这个问题,所以谢谢,我必须把文件放在 12\TEMPLATE\LAYOUTS\1033\STYLES\ 而不是 12\TEMPLATE\SiteTemplates\TEMPLATENAME\Layouts\1033
      【解决方案3】:

      我会说实话;我已经使用 SharePoint 几个月了,但我从来没有为功能装订

      而烦恼

      试试这样的:

      <Module Name="CssFiles" Url="Style Library/CSS" Path="CSS" RootWebOnly="FALSE">
        <File Url="style.css" Name="style.css" Type="GhostableInLibrary" />
      </Module>
      

      ...但由于这是一项功能,因此 CSS 文件应位于您的功能文件夹中的某个位置。因此,假设我们将此功能命名为“SO.Question”,您希望将这些 CSS 文件放在“12\TEMPLATE\FEATURES\SO.Question\CSS”中。

      请注意,css 文件需要放在功能文件夹“12\TEMPLATE\FEATURES\SO.Question”内的“CSS”目录中。这必须对应于&lt;Module&gt;Path 属性。如果您将 Path 属性更改为“RichardIsAwesome”,那么您会将文件放在“12\TEMPLATE\FEATURES\SO.Question\RichardIsAwesome”中。

      【讨论】:

        猜你喜欢
        • 2013-10-25
        • 1970-01-01
        • 1970-01-01
        • 2011-09-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-03-14
        • 2021-09-25
        相关资源
        最近更新 更多