ASP.netでタブスタイルのメニューシステムを実装する方法を見つけるのに苦労しています。タブはHTML/CSSの観点から見栄えが良く、マスターページに実装されているため、コンテンツページからbodyタグにアクセスすることはできません。私が解決しようとしているのは、ユーザーがアクセスしているページに基づいて「アクティブなタブ」を変更する方法です。ASP.netで選択可能なタブ/メニューを実装するためのエレガントな方法はありますか?
私はこれを行うにはいくつかの方法を考えることができます:
- Dynamicly各ページのロード
- でHTMLを生成し、選択したタブクラス を操作することをPage_Load
- 使用のjQueryのリスト項目を操作します
いくつかの解決策が不適切と思われる追加の問題があります。 1つのタブでいくつかの異なるページ名が埋め込まれる可能性があります。たとえば、Default.aspxとCourseDetail.aspxの両方のコースタブを選択する必要があります。
これらのどれも特にエレガントではないようですが、私はASP.netでこれを行うより良い方法があると感じていますが、私は何を探しているのかわかりません。
HTML:
<div id="tabs">
<ul>
<li class="selectedtab"><a href="/">Courses</a></li>
<li><a href="#">My Courses</a></li>
<li><a href="#">Administration</a></li>
</ul>
</div>
CSS:
#head ul
{
list-style: none;
padding:0;
margin:0;
}
#head li
{
display: inline;
border: solid;
border-width: 1px 1px 0 1px;
margin: 0 0.5em 0 0;
background: #EEE;
font-size: large;
font-weight: bold;
padding-top: 0.3em;
}
#head li a
{
padding: 0 1em;
text-decoration: none;
color: Black;
}
#head .selectedtab
{
padding-bottom: 1px;
background: white;
border-bottom: 1px solid white;
}
#tabs
{
text-align: right;
width: 100%;
border-bottom: 1px solid;
}
私はそれが好きです - どのようにASP.netでそれを実装するか考えています。私はマスターページを使用しているので、body要素のCssClassを変更するアクセス権がないようです。 –