レイアウト用のCSSファイルを含むWebフォームアプリケーションがあります。 IDを使用せずにCSSで行うのがはるかに難しい私の要素の1つは、可視性サーバ側を制御しているのでrunat="server"
でなければなりません。ASP.NET WebフォームのCSSセレクタ
<div id="x">
<div id="whatever" runat="server" visible="false">
<div id="y">
....
</div>
</div>
</div>
私の問題は、CSSで、私は私のセレクタとそのwhatever
div要素を無視する方法がわからない、と私はCSSをインライン化し、クライアント制御への変換サーバーに入れない限り、私は知らないだろうということです実行時まで制御名。
#x
{
position:absolute;
height:30px;
}
#x #whatever??? #y img
{
margin:-7px 15px 0 30px;
}
#x #whatever??? div
{
width:250px;
float:left;
}
etc.
この問題を回避するにはどうすればよいですか?出力をレンダリングしませんが、コンテンツの可視性/レンダリングを制御するために使用できるサーバーサイドコンテナコントロールはありますか、またはその中間divを無視するためのトリックがCSSにありますか?
これは、私がx
divをマスタページに持っていて、whatever
とy
divが両方ともページ内にあるという事実によって、さらに混乱します。私はMVCを使用していた場合、これは問題ではないことは分かっていますが、この時点では切り替えはオプションではありません。
を私はクラスセレクタにそれらを切り替えてみましたが、私はいくつかに実行していましたID /クラスで指定されていないコンポーネントの問題( '#x div'など)それはちょうどそれをやり直す問題かもしれませんが、私はCSSに精通していません。私が持っている.cssファイルは外部のデザイナーから来たもので、私はそれを変更したくないと思う。 – Kendrick
.x_class divを実行できませんでしたか?これは、CSSのわずかな書き直しを意味するだけで、idセレクタをクラスセレクタに変換することを意味します。 – WiseGuyEh
私はあなたがクラスでそれを行うことができないか分かりませんでした。最初にそれを確認し、それが私のために働かないなら@JonVDによる勧告を確認します。 – Kendrick