0

1 つの XML、1 つの XSLT、および 1 つの CSS を使用して、単純なブログ スタイルの Web サイトを作成しようとしています。そのために、xml から 1 つのエントリのみを表示するオプションが必要であり、javascript や php なしで実行したいと考えています。:target セレクターを使用してこれを実行しようとしています。

私が達成したい動作は次のとおりです。

  • index.html はすべてを表示する必要があります
  • index.html#one は id="one" のエントリのみを表示する必要があります
  • index.html#two は id="two" のエントリのみを表示する必要があります

等々。

最後の兄弟を表示するソリューションを見つけましたが、それは適合しません。私の xslt はエントリをテーブルに変換しますが、xml を動的に解析してそのソリューションに適合させる方法がわかりません。

css でこれを行う方法はありますか、それとも php の学習を開始する必要がありますか?

4

1 に答える 1

0

これはどちらかまたは両方の命題でなければなりません... PHPを学びましょう。それはあなたに利益をもたらします。

ただし、CSS のみのソリューション (少しの .htaccess マジックを使用) の場合は、index.html を index.html#all に書き直し、ラッピング div をすべての ID (またはラッパー ID が何であれ) を持つように設定してから、 #all に :target CSS を設定して、すべてを表示します。

#all .YouWantToHide {
    display:none;
}

#all:target .YouWantToHide, #one:target, #two:target {
    display:block;
}

これにより、通常のページではデフォルトですべてが非表示になり (アクセスされることはありません。特定のアイテムを表示し、後で非表示にするトーンを設定するだけです)、 #all ターゲット (現在はデフォルト ページ) で表示されます。特定のアイテムが必要に応じて表示され、他のアイテムは非表示になります。

于 2013-03-29T19:48:30.020 に答える