0

親を非表示にする<li>が、子は<ul>表示したままにする方法が必要です。

たとえば、次のコードがあります。

<li class="toplevel">Link
  <ul>
     <li class="secondlevel">Link</li>
  </ul>
<li>

基本的に、クラスのトップレベルは非表示にしますが、クラスのセカンドレベルは表示します。これで、cssを使用してこれを実行できることがわかりました。

visibility:hidden / visibility:visible

しかし、それは隠されたクラスの高さと幅を維持します。私が使用する必要があるのは、次のようなものです。

display:none / display:inline

ただし、もちろん、子が表示されないため、これは機能しません。また、表示されるように再表示する方法もありません。

可視性を使用して親を非表示にする以外に、非表示の親の高さ/幅が保持されないように子を保持する別の方法はありますか?

ありがとう。

4

1 に答える 1

5

parentの非表示と表示は不可能childrenです。

非表示にしたいトップレベルのリンクをインラインタグに配置できます。

<li class="toplevel"><span>Link</span>
    <ul>
        <li class="secondlevel">Link</li>
    </ul>
</li>

そして、display:noneこのタグに設定します:

li > span { display: none }
于 2012-08-13T12:21:24.890 に答える