2009-03-05 8 views

答えて

1

非動的なアプローチ:

あなたはそうのように、各サイトのCSSルールを使用することができます。

/* site-one.css */ 
#top-nav li.site-one a { 
    color: red; 
} 

/* site-two.css */ 
#top-nav li.site-two a { 
    color: red; 
} 

/* site-three.css */ 
#top-nav li.site-three a { 
    color: red; 
} 

HTML:

<ul id="top-nav"> 
    <li class="page-one"><a href="pages/one">Page one</a></li> 
    <li class="page-two"><a href="pages/two">Page two</a></li> 
    <li class="page-three"><a href="pages/three">Page three</a></li> 
</ul> 
1

あなたはすべてのドメインがフェッチされるバーのための単一のCSSを持つことができるかもしれません。そのCSSに重要なルールを追加してルールが他のものによって上書きされないようにしてください。それ以外の場合は、list/divにIDを追加するか、それを実装するために使用するものを追加することで、 "名前空間"のバーを保護します。

2

このようなことを行うには、PHPなどのサーバー側スクリプトを使用するのが一般的です。例えば:(読みやすくするためにフォーマット済み)

<ul id="top-nav"> 
    <li><a href="pages/home">Home</a></li> 
    <li class="active"><a href="pages/one">Page one</a></li> 
    <li><a href="pages/two">Page two</a></li> 
</ul> 
0

はい、あなたは現在のサイトに基づいてアンカー要素のクラスを割り当てることができます:

<?PHP 

echo '<ul id="top-nav">'; 

foreach($page as $pageId => $text) { 
    echo '<li'; 
    if($curPage == $pageId) 
     echo ' class="active"'; 
    echo '>'; 
    echo '<a href="pages/' . htmlspecialchars($pageId) . '">'; 
    echo htmlspecialchars($text); 
    echo '</a>'; 
    echo '</li>'; 
} 

echo '</ul>'; 

?> 

これは、のような出力を生成します。

関連する問題