Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/30.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ASP.Net菜单CSS未应用_Asp.net_Css - Fatal编程技术网

ASP.Net菜单CSS未应用

ASP.Net菜单CSS未应用,asp.net,css,Asp.net,Css,我最近将我的web应用程序从VB转换为C。还有一个问题-转换后,应用于我的网站导航菜单的CSS。Master不再工作。它的行为就像根本没有CSS一样 我已经做了以下工作: 我已经验证了CSS语法 我已经删除并重新添加了.css文件 我已经在Site.Master中删除并重新添加了对.css的引用 我已将内容复制到另一个.css文件并更新了引用 我已经创建了另一个测试项目,并且在主项目的Site.Master的内容上使用了.css文件,并验证了css和引用确实有效 所以我的问题是:在ASP.N

我最近将我的web应用程序从VB转换为C。还有一个问题-转换后,应用于我的网站导航菜单的CSS。Master不再工作。它的行为就像根本没有CSS一样

我已经做了以下工作:

  • 我已经验证了CSS语法
  • 我已经删除并重新添加了.css文件
  • 我已经在Site.Master中删除并重新添加了对.css的引用
  • 我已将内容复制到另一个.css文件并更新了引用
  • 我已经创建了另一个测试项目,并且在主项目的Site.Master的内容上使用了.css文件,并验证了css和引用确实有效
所以我的问题是:在ASP.Net Web应用程序中是否有某个地方可以仅对应用程序的某些部分禁用CSS

这个问题只发生在转换之后的现在,并且语法在其他web项目中有效,所以在我看来,它一定是在应用程序本身中切换了一些东西,从而破坏了它

这是我的代码,稍微整理一下:

我的标记:

<head id="Head1" runat="server">
    ...
    <link href="~/Styles/Site.css" rel="stylesheet" type="text/css" />
    ...
</head>
<body>
...
    <asp:Menu ID="Menu1" runat="server" CssClass="menu" EnableViewState="False" IncludeStyleBlock="False"
                Orientation="Horizontal" StaticDisplayLevels="1">
        <Items>
            <asp:MenuItem Text="PTS Home" Value="PTS Main" NavigateUrl="Default.aspx">...</asp:MenuItem>
            <asp:MenuItem Text="Admin" Value="Admin">...</asp:MenuItem>
            <asp:MenuItem Text="Estimating" Value="Estimating">...</asp:MenuItem>
            <asp:MenuItem Text="Purchasing" Value="Purchasing">...</asp:MenuItem>
            <asp:MenuItem Text="Commissions" Value="Commissions">...</asp:MenuItem>
            ...
        </Items>
    </asp:Menu>
</body>
它应该是什么样子

它实际上是什么样子的

div.menu
{
    padding: 0px 0px 0px 0px;
    background-color: #507F6D;
    z-index: 1;
}

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

div.menu ul li a
{
    background-color: #37725C; 
    color: #cfdbe6;
    text-decoration: none;
    padding: 0 5px;
    border: 1px solid greenyellow;
}

div.menu ul li a:active
{
    background-color: #37725C; 
    color: #cfdbe6;
    text-decoration: none;
    z-index: 1;
}

删除div。在CSS中,我认为控件不会创建div


找到了答案,多亏了皮特的评论指引我朝着正确的方向前进


控件的RenderingMode被设置为“Default”-显然,在VB中默认行为是List,但在C#中是Table。Div CSS对项目没有用处,因此没有格式。设置为列表和魔术

发布一些代码,像这样,我不认为有人可以帮助你发布css文件的链接,因为它出现在你的site.master中。另外,当您查看网页的源代码,然后单击指向css文件的链接时,会发生什么?完成。当我点击链接时,我收到了正确的CSS文件。
asp:menu
是否创建了一个带有菜单类的
div
?我本以为它会创建
ul
树,但我从来没有使用过
asp:menu
控件,事实上,您可能会了解一些事情-旧版本和测试版本确实会创建div,但转换后的版本正在创建表结构。我需要看一些。它看起来确实相关-转换后的程序正在创建带有td元素的表。但是,全新的测试应用程序创建了一个div,因此看起来可能有一个设置决定了菜单的构造方式。如果删除该div,则该规则将应用于class=“menu”的每个元素,而不仅仅是div下的元素,这就是我写这篇文章的原因。你试过了吗?如果没有必要,我宁愿不改变CSS的结构,我找到了我问题的答案,并将其作为答案发布。
div.menu
{
    padding: 0px 0px 0px 0px;
    background-color: #507F6D;
    z-index: 1;
}

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

div.menu ul li a
{
    background-color: #37725C; 
    color: #cfdbe6;
    text-decoration: none;
    padding: 0 5px;
    border: 1px solid greenyellow;
}

div.menu ul li a:active
{
    background-color: #37725C; 
    color: #cfdbe6;
    text-decoration: none;
    z-index: 1;
}