css - 如何避免共享点覆盖我的 CSS 类?

标签 css sharepoint twitter-bootstrap-3 sharepoint-2013

我正在努力避免 sharepoint 覆盖我的 Bootstrap 类,但不幸的是没有成功,我尝试了在网络上和 Sharepoint StackExchange 中找到的许多解决方案,但都没有用。

我的目标是在母版页中添加一个使用 bootstrap 制作的自定义导航栏。我的母版页基本上只是 Oslo 母版页的副本,我尝试在此处附上该页面的一些代码:

<head runat="server">
        <meta http-equiv="X-UA-Compatible" content="IE=10" />
        <meta name="GENERATOR" content="Microsoft SharePoint" />
        <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
        <meta http-equiv="Expires" content="0" />       
        <SharePoint:SPPinnedSiteTile runat="server" TileUrl="/_layouts/15/images/SharePointMetroAppTile.png" TileColor="#0072C6" />
        <SharePoint:RobotsMetaTag runat="server" />
        <SharePoint:PageTitle runat="server">
        <asp:ContentPlaceHolder id="PlaceHolderPageTitle" runat="server" />
        </SharePoint:PageTitle>
        <SharePoint:StartScript runat="server" />
        <SharePoint:CssLink runat="server" Version="15" />

        <SharePoint:CacheManifestLink runat="server" />
        <SharePoint:ScriptLink language="javascript" name="core.js" OnDemand="true" runat="server" Localizable="false" />
        <SharePoint:ScriptLink language="javascript" name="menu.js" OnDemand="true" runat="server" Localizable="false" />
        <SharePoint:ScriptLink language="javascript" name="callout.js" OnDemand="true" runat="server" Localizable="false" />
        <SharePoint:ScriptLink language="javascript" name="sharing.js" OnDemand="true" runat="server" Localizable="false" />
        <SharePoint:ScriptLink language="javascript" name="suitelinks.js" OnDemand="true" runat="server" Localizable="false" />
        <SharePoint:CustomJSUrl runat="server" />
        <SharePoint:SoapDiscoveryLink runat="server" />
        <SharePoint:AjaxDelta id="DeltaPlaceHolderAdditionalPageHead" Container="false" runat="server">

        <asp:ContentPlaceHolder id="PlaceHolderAdditionalPageHead" runat="server" />
        <SharePoint:DelegateControl runat="server" ControlId="AdditionalPageHead" AllowMultipleControls="true" />
        </SharePoint:AjaxDelta>
        <SharePoint:SPShortcutIcon runat="server" IconUrl="/_layouts/15/images/favicon.ico?rev=23" />
<![CDATA[ [if IE 9] ]]>        <style type="text/css">//<![CDATA[
    .ms-core-animation-transparent
    {
        opacity:0;
    }
    .ms-isBot .ms-core-animation-transparent
    {
        opacity:1;
    }


        //]]></style>
<![CDATA[ [endif] ]]>        <!--[if lte IE 8]>
    <style type="text/css">//<![CDATA[
    .ms-core-animation-transparent,
    .ms-core-animation-transparent img
    {
       -ms-filter:"alpha(opacity=0)";
    }
    .ms-isBot .ms-core-animation-transparent,
    .ms-isBot .ms-core-animation-transparent img
    {
       -ms-filter:"";
    }
    //]]></style>
    <![endif]-->
        <script type="text/javascript">//<![CDATA[
            var g_pageLoadAnimationParams = { elementSlideIn: "sideNavBox", elementSlideInPhase2: "contentBox" };


            //]]></script>

        <SharePoint:CssRegistration Name="Themable/corev15.css" runat="server" />
        <!-- jQuery -->
            <SharePoint:ScriptLink ID="ScriptLink1" Name="~sitecollection/Style Library/jQuery/jquery.js" runat="server" />
            <!-- jQuery END -->
            <!-- Custom JS References -->
            <SharePoint:ScriptLink ID="ScriptLink3" Name="~sitecollection/Style Library/customJs/masterReorderer.js" runat="server" />
            <!-- Custom JS References END -->
            <!-- CSS & jQuery BOOTSTRAP -->
            <SharePoint:ScriptLink ID="ScriptLink2" Name="~sitecollection/Style Library/bootstrap/bootstrap.js" runat="server" />
            <SharePoint:CssRegistration Name="<% $SPUrl:~SiteCollection/Style Library/bootstrap/bootstrap.css%>" After="corev15.css" runat="server" />
            <SharePoint:CssRegistration Name="<% $SPUrl:~SiteCollection/Style Library/bootstrap/bootstrap-theme.css%>" After="corev15.css" runat="server" />

            <!-- CSS BOOTSTRAP & jQuery END -->

我哪里错了?

最佳答案

看起来您在使用 SharePoint:CssRegistration 和 After 属性时做得很正确。 SharePoint 的 css 和 Bootstrap 之间存在很多冲突,尤其是在处理 box-sizing 声明时。您可能想使用许多免费的 Bootstrap 主题和母版页之一:

http://bindtuning.com/cms/umbraco/umbraco-7/theme/thebootstraptheme

关于css - 如何避免共享点覆盖我的 CSS 类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33437046/

相关文章:

css - 选择背景白色/透明 - Chrome OSx

css - 是什么导致我的 h2 下面有这个额外的空间?

javascript - 使用javascript调整具有特定类的所有div的大小

list - 如何启用专业?

iframe - 通过 SharePoint 2013 中的 iframe 集成来自 Reporting server 2016 的报告

javascript - 在 CSS/JS 中可以有一个半透明层覆盖另一个层而不会阻塞/捕获点击

javascript - 列出 SharePoint 中关注的组和网站?

CSS/BOOTSTRAP : making element inside the gird (. 容器/.row) 全(屏幕)宽度

html - 如何使用 Bootstrap 将 <div> 与 <image> 和另一个 <div> 与 <p> 垂直对齐

html - 在 div 中垂直和水平居中文本