1

Web ページを作成していて、ナビゲーションを正しくしようとしています。私はmysqlを使用して、「サブジェクト」を1つのテーブルに、「ページ」をWebサイトの別のテーブルに保存しています。正常に動作しますが、選択したページまたは件名を表すために太字を使用しているだけで、何らかの理由で件名を選択すると、その件名の下のページのリスト全体が太字になります。ページは期待どおりに機能します (選択したページは太字になっています)。ここに私のPHPページと私のCSSページがあります。(「選択された」htmlクラスが継承されていると思われますが、その方法がわかりません)。どんな助けでも素晴らしいでしょう。

PHP

                while ($subject = mysql_fetch_array($subject_set)){
                    echo "<li";
                    if ($subject["id"] == $sel_subj){ echo " class=\"selected\""; }
                    echo"><a href=\"content.php?subj=".urlencode($subject['id']).
                            "\">{$subject["menu_name"]}</a></li>";
                    $page_set = get_pages_for_subject($subject['id']);
                    echo "<ul class=\"pages\">";
                    while ($page = mysql_fetch_array($page_set)){
                        echo "<li";
                        if ($page['id'] == $sel_page){ echo " class=\"selected\""; }
                        echo"><a href=\"content.php?page=".urlencode($page['id']).
                        "\">{$page["menu_name"]}</a></li>";
                    }
                    echo "</ul>";
                }
                ?>
                    </ul>
                </td>
                <td id="page">
                    <h2>Content Area</h2>
                    <?php echo $sel_subj;?>
                    <?php echo $sel_page;?>
                </td>
            </tr>
        </table>

CSS

/*Navigation*/
#navigation { width: 225px; height: 600px; padding: 5% 5%;
             color: #0D8800; background: #44EE44; }
#navigation a { color: #8D0D19; text-decoration: none; }
ul.subjects { padding-left: 0; list-style: none; }
ul.pages { padding-left: 0; list-style: square; }
.selected { font-weight: bold; }

ありがとう

4

1 に答える 1

0

「selected」クラスを「a」タグに移動した方がよいでしょう。

それができない場合は、継承をブロックする必要があります。

.selected ul li { font-weight: normal; }
于 2012-05-16T17:08:57.013 に答える