質問 1 - ASP.NET メニューに独自の外観を与える:
ASP.NET メニュー コントロールは、HTML で表示される場合、単なるul
(順序付けられていないリスト) にすぎません。いくつかの CSS スタイル ルールを適用するだけで、独自の外観が得られます。
ASPX:
<asp:Menu ID="Menu1" runat="server" Orientation="Horizontal" CssClass="menu">
<Items>
<asp:MenuItem Text="Home" NavigateUrl="Home.aspx" />
<asp:MenuItem Text="Contact us" NavigateUrl="ContactUs.aspx" />
<asp:MenuItem Text="About us" NavigateUrl="AboutUs.aspx" />
</Items>
</asp:Menu>
CSS:
<style type="text/css">
.menu ul
{
border-bottom: 1px solid gray;
}
.menu ul li
{
border: 1px solid white;
background-color: gray;
text-decoration: none;
padding: 3px;
margin: 3px;
}
.menu ul li a
{
color: White;
}
.menu ul li a:hover
{
font-weight:bold;
}
</style>
結果:
質問 2: ASP.NET メニューまたは CSS+Javascript メニュー:
これはすべて、必要な機能によって異なります。
単にナビゲーション目的でメニューを使用している場合は、単純な CSS と JavaScript メニューで十分ですが、データベースからメニュー項目を動的に生成したり、ユーザーの役割に基づいて特定のメニュー項目を非表示にしたりすることを計画している場合は、 ASP.NET メニュー コントロールのようなより強力なものを使用する必要があります。質問 1 に対する私の回答からわかるように、CSS と JavaScript をメニュー コントロールに簡単に追加できるため、その点で非常に柔軟です。