Sharepoint Foundation 2010: полностью скрыть ленту
Я пытаюсь стилизовать главную страницу в Sharepoint Foundation 2010. Я использую ночные и обычные мастера и стили.
В дизайне нет ленты, и мне просто нужно его выключить. Просто старый старый. Когда я устанавливаю показ ленты div: none, весь верхний баннер исчезает.
Я не разработчик sharepoint и вообще потерян. Есть ли простой способ просто спрятать / избавиться от ленты? Ничего особенного в разрешениях не требуется - просто нужно всегда уходить.
5 ответов
Вы должны быть в состоянии использовать информацию в этой статье, чтобы начать.
http://www.endusersharepoint.com/2010/11/09/hiding-the-sharepoint-2010-ribbon-from-anonymous-users/
CSS-классы, которые вы хотите посмотреть, являются;
<style type="text/css">
div#s4-ribbonrow.s4-pr.s4-ribbonrowhidetitle { height:43px !important }
/*.ms-cui-ribbon { display:none; }*/
.s4-ribbonrowhidetitle s4-notdlg noindex { height: 43px !important; }
.s4-title h1 a,.s4-title h2 a,.s4-title h2 { font-size: small; }
.ms-pagetitleareaframe table { background: none; }
#s4-leftpanel-content { display:none !important; }
#s4-titlerowhidetitle { display:none !important; }
.s4-ca { margin-left:0px !important; margin-right:0px !important; }
</style>
В случае, если кто-то боролся с этой проблемой. Скрытие ленты может вызвать некоторые дальнейшие проблемы ( http://social.msdn.microsoft.com/Forums/en-US/9422aa0f-5010-4691-a0ab-25e7aca6b478/issue-with-div-s4workspace-and-scroll-bar)
Особенно, если вы включите свой собственный заголовок и скроете ленту.
Быстрый обходной путь использует CSS. #s4-workspace все равно получит правильную высоту и полоса прокрутки не будет проблемой, так как лента будет скрыта.:
body #s4-ribbonrow {
height: 0px !important;
min-height: 0px !important;
}
Как указано на связанной странице ответа knight0323, ленту можно скрыть, отредактировав v4.master
и завернуть ленту div с <SharePoint:SPSecurityTrimmedControl/>
:
<SharePoint:SPSecurityTrimmedControl PermissionsString="ManagePermissions" runat="server">
<div id="s4-ribbonrow" class="s4-pr s4-ribbonrowhidetitle">
<!-- Ribbon code appears here... -->
</div>
</SharePoint:SPSecurityTrimmedControl>
К сожалению, в моей системе это имеет побочный эффект, когда полоса прокрутки страницы начинает работать неправильно. Это, кажется, является результатом зависимости между лентой и s4-workspace
дела. Таким образом, чтобы решить эту проблему, я переехал <SharePoint:SPSecurityTrimmedControl/>
из ленты div, чтобы обернуть <div id="s4-ribboncont">
и добавил следующую разметку в верхней части v4.master
:
<style type="text/css">
#s4-ribbonrow { display: none; }
</style>
<SharePoint:SPSecurityTrimmedControl PermissionsString="ManagePermissions" runat="server">
<style type="text/css">
#s4-ribbonrow { display: block; }
</style>
</SharePoint:SPSecurityTrimmedControl>
В результате лента по умолчанию скрыта, но в DOM остается достаточная разметка, поэтому страница продолжает работать правильно. Для администраторов лента отображается нормально.
В случае, если кто-то еще борется с этим, вот полные инструкции, чтобы сделать это, не ломая полосу прокрутки или не теряя область строки заголовка, или любые другие странности:
Скрытие ленты Sharepoint 2010, которая не теряет область заголовка