[英]SharePoint 2007 popup rich text editor displays corporate logo from master page - how can I remove this?
我目前在嘗試在MOSS 2007網站定義中設置HTML RTF編輯器樣式時遇到問題。
我在body標簽的自定義母版頁上內聯指定了公司徽標,如下所示:
<%@Master language="C#"%>
<%@ Register Tagprefix="SharePoint" Namespace="Microsoft.SharePoint.WebControls" Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Register Tagprefix="Utilities" Namespace="Microsoft.SharePoint.Utilities" Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Import Namespace="Microsoft.SharePoint" %>
<%@ Import Namespace="Microsoft.SharePoint.ApplicationPages" %>
<%@ Register Tagprefix="WebPartPages" Namespace="Microsoft.SharePoint.WebPartPages" Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Register TagPrefix="wssuc" TagName="Welcome" src="~/_controltemplates/Welcome.ascx" %>
<%@ Register TagPrefix="wssuc" TagName="DesignModeConsole" src="~/_controltemplates/DesignModeConsole.ascx" %>
<HTML id="HTML1" dir="<%$Resources:wss,multipages_direction_dir_value%>" runat="server" xmlns:o="urn:schemas-microsoft-com:office:office">
<HEAD id="HEAD1" runat="server">
<META Name="GENERATOR" Content="Microsoft SharePoint">
<META Name="progid" Content="SharePoint.WebPartPage.Document">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
<META HTTP-EQUIV="Expires" content="0">
<SharePoint:RobotsMetaTag ID="RobotsMetaTag1" runat="server"/>
<Title ID=onetidTitle><asp:ContentPlaceHolder id=PlaceHolderPageTitle runat="server"/></Title>
<SharePoint:CssLink ID="CssLink1" runat="server"/>
<SharePoint:Theme ID="Theme1" runat="server"/>
<SharePoint:ScriptLink ID="ScriptLink1" language="javascript" name="core.js" Defer="true" runat="server" />
<SharePoint:CustomJSUrl ID="CustomJSUrl1" runat="server" />
<SharePoint:SoapDiscoveryLink ID="SoapDiscoveryLink1" runat="server" />
<asp:ContentPlaceHolder id="PlaceHolderAdditionalPageHead" runat="server"/>
<SharePoint:DelegateControl ID="DelegateControl1" runat="server" ControlId="AdditionalPageHead" AllowMultipleControls="true"/>
<style>
body
{
background-image:url(/_layouts/images/corp/corpLogo.gif);
background-repeat:no-repeat;
}
</style>
</HEAD>
...
當作為功能部件部署時,該母版頁可以很好地用於我們所有標准的即裝即用頁面和站點-徽標出現在左上角(並且代碼還使用單獨定義的樣式表應用了配色方案) 。
但是,當我們嘗試使用CEWP修改內容時,富文本編輯器也會在左上角顯示此徽標,從而部分遮蓋了用戶需要編輯的文本。
我試圖修改母版頁中的樣式以隱藏此徽標,但找不到解決方法。 我也考慮過修改
C:\\ Program Files \\ Common Files \\ Microsoft共享\\ Web服務器擴展\\ 12 \\ TEMPLATE \\ LAYOUTS \\ 1033 \\ htmleditor.js
以及實際的RTF編輯器本身位於
C:\\ Program Files \\ Common Files \\ Microsoft共享\\ Web服務器擴展\\ 12 \\ TEMPLATE \\ LAYOUTS \\ RTE2PUEditor.aspx
但這並沒有帶來任何成功(我還是寧願不這樣做!)。
有人可以指出我正確的方向嗎?
我想將自定義商標(徽標,css等)應用於所有頁面,但不應用於彈出的RTF編輯器。 這可能嗎? 如果是這樣,怎么樣?
HtmlEditor.js中的RTE2_GenerateLaunchArguments方法復制頁面上的所有樣式表和樣式:
var styleRules=new Array();
var styleRulesUrl=new Array();
for (var i=0; i<document.styleSheets.length; i++)
{
var styleSheet_href=document.styleSheets[i].href;
if (styleSheet_href !="")
{
styleRulesUrl[styleRulesUrl.length]=styleSheet_href;
}
else
{
var rules=document.styleSheets[i].rules;
for (var j=0; j<rules.length; j++)
{
styleRules[styleRules.length]=rules[j];
}
}
}
然后,將這些值傳遞並應用於模態對話框RTE2PUEditor.aspx。 看起來最快的解決方法是使用表單而不是body標簽:
form#aspnetForm
{
background-image:url(/_layouts/images/corp/corpLogo.gif);
background-repeat:no-repeat;
}
RTE2PUEditor.aspx上表單的ID為RTE2PUEditorForm,而其他大多數頁面(尤其是使用母版頁的頁面)都使用aspnetForm。
就是說,您可能要考慮設置站點徽標,而不是使用CSS。 您可以通過以下步驟手動設置徽標:轉到“網站設置”>“標題,描述和圖標”>“徽標URL和描述”並更改URL。 或者,您可以使用SPWeb.SiteLogoUrl屬性通過代碼進行設置。 請注意,這要求您的自定義母版頁上存在SiteLogoImage控件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.