2011-09-29 184 views
2

我遇到了CSS問題(不確定)。Css asp:菜單浮動

其實我是新來的CSS,我試圖理解它。

好吧,讓我們來看看:

  • 我創建了一個WebApplication的(ASP.Net網頁)與Visual Studio 2010
  • 我決定採用VS 2010
  • 給出的原始模板
  • 我試着讓默認菜單右鍵懸浮。但我無法做到這一點。
  • 原來的菜單看起來像:

    |Home|About_______________________________| 
    
  • 我想使它看起來像:

    |_______________________________Home|About| 
    
  • 我試過的風格= 「浮動:權利;」。
  • 我也試過DIR = 「RTL」,但我得到這樣的:

    |_______________________________About|Home| 
    

我怎樣才能解決這個問題?

我不確定這是CSS問題還是控件問題。我不熟悉Web應用程序,我曾在Winform Application上工作過。

這是的Site.Master:

<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="Site.master.cs" Inherits="WebApplication1.SiteMaster" %> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> 
<head runat="server"> 
    <title></title> 
    <link href="~/Styles/Site.css" rel="stylesheet" type="text/css" /> 
    <asp:ContentPlaceHolder ID="HeadContent" runat="server"> 
    </asp:ContentPlaceHolder> 
</head> 
<body> 
    <form runat="server"> 
    <div class="page"> 
     <div class="header"> 
      <div class="title"> 
       <h1> 
        My ASP.NET Application 
       </h1> 
      </div> 
      <div class="loginDisplay"> 
       <asp:LoginView ID="HeadLoginView" runat="server" EnableViewState="false"> 
        <AnonymousTemplate> 
         [ <a href="~/Account/Login.aspx" id="HeadLoginStatus" runat="server">Log In</a> 
         ] 
        </AnonymousTemplate> 
        <LoggedInTemplate> 
         Welcome <span class="bold"> 
          <asp:LoginName ID="HeadLoginName" runat="server" /> 
         </span>! [ 
         <asp:LoginStatus ID="HeadLoginStatus" runat="server" LogoutAction="Redirect" LogoutText="Log Out" 
          LogoutPageUrl="~/" /> 
         ] 
        </LoggedInTemplate> 
       </asp:LoginView> 
      </div> 
      <div class="clear hideSkiplink"> 
       <asp:Menu ID="NavigationMenu" runat="server" CssClass="menu" EnableViewState="false" 
        IncludeStyleBlock="false" Orientation="Horizontal" dir="rtl"> 
        <Items> 
         <asp:MenuItem NavigateUrl="~/Default.aspx" Text="Home" /> 
         <asp:MenuItem NavigateUrl="~/About.aspx" Text="About" /> 
        </Items> 
       </asp:Menu> 
      </div> 
     </div> 
     <div class="main"> 
      <asp:ContentPlaceHolder ID="MainContent" runat="server" /> 
     </div> 
     <div class="clear"> 
     </div> 
    </div> 
    <div class="footer"> 
    </div> 
    </form> 
</body> 
</html> 

,這是CSS:以上

/* DEFAULTS 
----------------------------------------------------------*/ 

body 
{ 
    background: #b6b7bc; 
    font-size: .80em; 
    font-family: "Helvetica Neue", "Lucida Grande", "Segoe UI", Arial, Helvetica, Verdana, sans-serif; 
    margin: 0px; 
    padding: 0px; 
    color: #696969; 
} 

a:link, a:visited 
{ 
    color: #034af3; 
} 

a:hover 
{ 
    color: #1d60ff; 
    text-decoration: none; 
} 

a:active 
{ 
    color: #034af3; 
} 

p 
{ 
    margin-bottom: 10px; 
    line-height: 1.6em; 
} 


/* HEADINGS 
----------------------------------------------------------*/ 

h1, h2, h3, h4, h5, h6 
{ 
    font-size: 1.5em; 
    color: #666666; 
    font-variant: small-caps; 
    text-transform: none; 
    font-weight: 200; 
    margin-bottom: 0px; 
} 

h1 
{ 
    font-size: 1.6em; 
    padding-bottom: 0px; 
    margin-bottom: 0px; 
} 

h2 
{ 
    font-size: 1.5em; 
    font-weight: 600; 
} 

h3 
{ 
    font-size: 1.2em; 
} 

h4 
{ 
    font-size: 1.1em; 
} 

h5, h6 
{ 
    font-size: 1em; 
} 

/* this rule styles <h1> and <h2> tags that are the 
first child of the left and right table columns */ 
.rightColumn > h1, .rightColumn > h2, .leftColumn > h1, .leftColumn > h2 
{ 
    margin-top: 0px; 
} 


/* PRIMARY LAYOUT ELEMENTS 
----------------------------------------------------------*/ 

.page 
{ 
    width: 960px; 
    background-color: #fff; 
    margin: 20px auto 0px auto; 
    border: 1px solid #496077; 
} 

.header 
{ 
    position: relative; 
    margin: 0px; 
    padding: 0px; 
    background: #4b6c9e; 
    width: 100%; 
} 

.header h1 
{ 
    font-weight: 700; 
    margin: 0px; 
    padding: 0px 0px 0px 20px; 
    color: #f9f9f9; 
    border: none; 
    line-height: 2em; 
    font-size: 2em; 
} 

.main 
{ 
    padding: 0px 12px; 
    margin: 12px 8px 8px 8px; 
    min-height: 420px; 
} 

.leftCol 
{ 
    padding: 6px 0px; 
    margin: 12px 8px 8px 8px; 
    width: 200px; 
    min-height: 200px; 
} 

.footer 
{ 
    color: #4e5766; 
    padding: 8px 0px 0px 0px; 
    margin: 0px auto; 
    text-align: center; 
    line-height: normal; 
} 


/* TAB MENU 
----------------------------------------------------------*/ 

div.hideSkiplink 
{ 
    background-color:#3a4f63; 
    width:100%; 
} 

div.menu 
{ 
    padding: 4px 0px 4px 8px; 
} 

div.menu ul 
{ 
    list-style: none; 
    margin: 0px; 
    padding: 0px; 
    width: auto; 
} 

div.menu ul li a, div.menu ul li a:visited 
{ 
    background-color: #465c71; 
    border: 1px #4e667d solid; 
    color: #dde4ec; 
    display: block; 
    line-height: 1.35em; 
    padding: 4px 20px; 
    text-decoration: none; 
    white-space: nowrap; 
} 

div.menu ul li a:hover 
{ 
    background-color: #bfcbd6; 
    color: #465c71; 
    text-decoration: none; 
} 

div.menu ul li a:active 
{ 
    background-color: #465c71; 
    color: #cfdbe6; 
    text-decoration: none; 
} 

/* FORM ELEMENTS 
----------------------------------------------------------*/ 

fieldset 
{ 
    margin: 1em 0px; 
    padding: 1em; 
    border: 1px solid #ccc; 
} 

fieldset p 
{ 
    margin: 2px 12px 10px 10px; 
} 

fieldset.login label, fieldset.register label, fieldset.changePassword label 
{ 
    display: block; 
} 

fieldset label.inline 
{ 
    display: inline; 
} 

legend 
{ 
    font-size: 1.1em; 
    font-weight: 600; 
    padding: 2px 4px 8px 4px; 
} 

input.textEntry 
{ 
    width: 320px; 
    border: 1px solid #ccc; 
} 

input.passwordEntry 
{ 
    width: 320px; 
    border: 1px solid #ccc; 
} 

div.accountInfo 
{ 
    width: 42%; 
} 

/* MISC 
----------------------------------------------------------*/ 

.clear 
{ 
    clear: both; 
} 

.title 
{ 
    display: block; 
    float: left; 
    text-align: left; 
    width: auto; 
} 

.loginDisplay 
{ 
    font-size: 1.1em; 
    display: block; 
    text-align: right; 
    padding: 10px; 
    color: White; 
} 

.loginDisplay a:link 
{ 
    color: white; 
} 

.loginDisplay a:visited 
{ 
    color: white; 
} 

.loginDisplay a:hover 
{ 
    color: white; 
} 

.failureNotification 
{ 
    font-size: 1.2em; 
    color: Red; 
} 

.bold 
{ 
    font-weight: bold; 
} 

.submitButton 
{ 
    text-align: right; 
    padding-right: 10px; 
} 

所有代碼都是在2010年VS 給出的默認編碼幫幫我! 非常感謝!

回答

3

哦,我已經找到了,只需編輯div.menu類:「重要的」

div.menu 
{ 
    padding: 4px 8px 4px 0px; 
    float: right !important 
} 

關鍵字(我不知道這個奇怪的東西),讓瀏覽器渲染我asp:菜單浮動樣式基於我的CSS類不是從生成的JavaScript。

我在這裏找到:http://walaapoints.blogspot.com/2011/04/aspnet-menu-rtl.html

+0

你確定課程是如何創建的?使用「!important」將覆蓋任何其他的CSS,但這不是一個很好的做法,但。 –

+0

我覺得你的更好的方法是找到javascript如何創建inline-css並阻止它們,以避免衝突 –

+2

由.net框架生成的腳本。不知道如何阻止它:) – haiduong87

1

如果這是你的菜單

div.menu ul 
{ 
    list-style: none; 
    margin: 0px; 
    padding: 0px; 
    width: auto; 
} 

,那麼你需要一個width添加到它,以讓它浮動。

因此,像

div.menu ul 
{ 
    list-style: none; 
    margin: 0px; 
    padding: 0px; 
    width: 300px; //CHANGE THIS 
    float:right; 
} 

width需要的東西低於100%/汽車才能正常浮動。

+0

哦,感謝您的幫助,我只是測試它,並沒有工作。任何想法? – haiduong87