【问题标题】:ASP Menu float property is not workingASP 菜单浮动属性不起作用
【发布时间】:2016-02-12 19:15:25
【问题描述】:

我有一个 asp 菜单,我想将它浮动到左边,以便它之后的元素可以到达它的右侧(旁边)。我为Menu 设置了CssClass 并添加了float: left,但它不起作用。我什至将float:left 更改为float:right 以查看它是否有效,但没有任何效果。

这是我的代码:

 <form id="form1" runat="server">
        <div class="wrapper">
        <div class="navbar">


        /*some code*/

     </div>

    <div class="middle"> 



    <asp:Menu ID="MenuRec" runat="server" CssClass="recFriends">
         <Items>
            <asp:MenuItem Text="People you may know:" Selectable="false" Enabled="false"></asp:MenuItem>
            <asp:MenuItem Text="<br/>" Selectable="false" Enabled="false"></asp:MenuItem>

        </Items>

         <Items>
            <asp:MenuItem Text=" Item1"  Selectable="false"></asp:MenuItem>
            <asp:MenuItem Text=" Item2"  Selectable="false"></asp:MenuItem>
             <asp:MenuItem Text=" Item3" Selectable="false"></asp:MenuItem>
        </Items>
    </asp:Menu>



          <asp:ContentPlaceHolder id="ContentPlaceHolder1" runat="server">
            <!--here goes the customized content--> 
        </asp:ContentPlaceHolder>

  </div>
     <div class="footer">

    </div>
</div>
</form>

</body>

我的 CSS:

.recFriends {

    float:left;  
    padding-top:1em;
    color:#003366; 
    font-weight:normal;
    font-style:italic; 
}

ContentPlaceHolder 中的控件(将位于从该母版页继承的页面中)必须位于菜单的右侧,但这些控件位于菜单的下方。

我搜索了很多,但没有任何效果,我什至检查了这里可用的解决方案:

CssClass is not working for my asp menu - all code attached

asp Menu control not floating properly

谁能告诉我如何解决这个问题?

谢谢。

【问题讨论】:

  • 你试过!important吗?
  • 您是否尝试过将 float: left 添加到您的 contentPlaceHolder 中?
  • 它不会运行 asp..你将不得不粘贴 html..
  • this 你想要达到什么目的?
  • 好...:) 继续...只是提醒您,请使用浏览器的inspect element 实用程序查找计算的样式并检查是否应用了任何边距或填充。

标签: html css asp.net css-float aspmenu


【解决方案1】:

将您的菜单包装在一个 div 中,并在内容占位符之前关闭该 div。将 CSS 类从菜单移动到容器 div。

HTML

  <div class="recFriends">
            <asp:Menu ID="MenuRec" runat="server">
                <Items>
                    <asp:MenuItem Text="People you may know:" Selectable="false" Enabled="false"></asp:MenuItem>
                    <asp:MenuItem Text="<br/>" Selectable="false" Enabled="false"></asp:MenuItem>

                </Items>

                <Items>
                    <asp:MenuItem Text=" Item1" Selectable="false"></asp:MenuItem>
                    <asp:MenuItem Text=" Item2" Selectable="false"></asp:MenuItem>
                    <asp:MenuItem Text=" Item3" Selectable="false"></asp:MenuItem>
                </Items>
            </asp:Menu>
        </div>
        <asp:ContentPlaceHolder ID="MainContent" runat="server">
            <!--here goes the customized content-->
        </asp:ContentPlaceHolder>

CSS

 .recFriends {
        float: left;
        padding-top: 1em;
        color: #003366;
        font-weight: normal;
        font-style: italic;
        width: 20%;
        padding-left: 2em;
    }

【讨论】:

  • 谢谢,#MainContent_MenuRec 是什么?我应该把它放在哪里?你能详细说明一下吗?你的意思是我应该有这样的 CSS,.recFriends a?
  • #MainContent_MenuRec A 是 asp 菜单的默认 css 类。您可以按照答案中的描述覆盖 CSS。我还附上了一个样本。
  • 感谢您的明确回答,但这不是我想做的。我使用了您提供的代码,但它不起作用。我不想将项目放在菜单的右侧,我想将 ContentPlaceHolder 放在菜单的右侧,有什么建议吗?谢谢。
  • 对不起,我没听明白。您是否需要将页面内容放置在菜单的右侧?顺便提一句。如果您在母版页中添加样式,则该类应该是“MenuRec a”而不是 MainContent_MenuRec a
  • 在问题的代码中,有一个 ContentPlaceHolder asp 标签,这个标签将与页面中的一个 asp 内容标签相关联,该页面将从这个母版页继承。我希望子页面中内容标记中的任何内容都位于母版页中菜单的右侧。我将不胜感激。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-12-31
  • 1970-01-01
相关资源
最近更新 更多