ASP.NET で Sitemap を使用することは、CSS を助長しないと感じています。メニューを CSS で作成できるようにフォーマットするには、どこに行けばよいでしょうか。mu ul と li はどこにいるの?
…初級者ですので、鼻下なら許してください。
ASP.NET で Sitemap を使用することは、CSS を助長しないと感じています。メニューを CSS で作成できるようにフォーマットするには、どこに行けばよいでしょうか。mu ul と li はどこにいるの?
…初級者ですので、鼻下なら許してください。
ul's と li's で CSS メニューを使用しないのはなぜですか? ASP.NET には、Web コントロールを使用する必要があると言うものは何もありません。通常の HTML も同様に機能します (おそらくより優れています)。
メニューやブレッドクラムを表示するために SiteMap を使用すると、非常に便利です。
このようにこれを達成する方法に関するいくつかのチュートリアルを読むことができます。純粋な UL / LI を生成したい場合は、この投稿を読むことをお勧めします
How Do I: Implement Site Navigation in ASP.NET?に関する ASP.NET ビデオ チュートリアルが常にあります。
CSS Friendly Adaptersを試してみてください(そのために作成されたものです) 。ビデオ チュートリアルもあります。
それが役に立てば幸い
メニューを完全に制御するには、Repeater を使用して Web.SiteMap にバインドします。
<asp:Repeater ID="MenuRepeater" DataSourceID="SiteMapDataSource1" runat="server">
<ItemTemplate>
<li>
<a href='<%#Eval("url")%>'><%#Eval("Title")%></a>
</li>
</ItemTemplate>
</asp:Repeater>
CSS ドロップダウン メニューを作成する場合は、ネストされた Repeater を追加するだけです。
<asp:Repeater ID="MenuRepeater" DataSourceID="SiteMapDataSource1" runat="server" EnableViewState="false">
<ItemTemplate>
<li>
<a href='<%#Eval("url")%>'><%#Eval("Title")%></a>
<ul>
<asp:Repeater ID="DropDownRepeater" DataSource='<%#Container.DataItem.ChildNodes()%>' runat="server">
<ItemTemplate>
<li>
<a href='<%#Eval("url")%>'><%#Eval("Title")%></a>
</li>
</ItemTemplate>
</asp:Repeater>
</ul>
</li>
</ItemTemplate>
</asp:Repeater>
したがって、Web.SiteMap を使用しながら、必要な CSS メニューを取得できます。
SiteMapDataSource を Repeater と組み合わせて、標準の<ul><li>
メニュー リストを作成できます。メニュー項目の画像を指定するなど、独自の属性を web.sitemap ファイルに追加することもできます...
teknohippyさんのリピーター利用のアドバイスはスゴイ!
ただし、ライン
<asp:Repeater ID="DropDownRepeater" DataSource='<%#Container.DataItem.ChildNodes()%>' runat="server">
間違っています。それはする必要があります
<asp:Repeater ID="Repeater1" runat="server" DataSource='<%# ((SiteMapNode) Container.DataItem).ChildNodes %>'>
働くために。
詳細は、この優れたチュートリアルで入手できます。