ホームページ >ウェブフロントエンド >CSSチュートリアル >CSS を使用して ID にコロンを含む JSF コンポーネントのスタイルを効果的に設定するにはどうすればよいですか?
コロンを使用した JSF コンポーネント CSS セレクター: 障害のナビゲート
コロン (:) が原因で、JSF で生成された HTML 要素をスタイル設定する際に問題が発生するクライアントIDに含まれていますか?この問題は、CSS 疑似セレクターでの : の使用に起因します。この課題に取り組むためのいくつかのアプローチを検討してみましょう。
コロンのエスケープ:
最初の解決策では、CSS 解析エラーの発生を避けるためにコロンをエスケープします。次の構文を使用します:
#phoneForm\:phoneTable { background: pink; }
より幅広いブラウザをサポートするには、3A の後にスペースを使用することを検討してください:
#phoneFormA phoneTable { background: pink; }
代替アプローチ:
1. HTML 要素で囲む:
非 JSF HTML 要素でコンポーネントを分離し、代わりにその要素のスタイルを設定します。
<div>
2. CSS クラスを使用する:
ID に依存する代わりに、CSS クラスをコンポーネントに割り当てます。
<h:dataTable>
3. JSF UINamingContainer セパレータを変更します:
web.xml コンテキスト パラメータを更新して、セパレータ文字を :.
<param-value>-</param-value>
ではなく - に変更します。これにより、新しいセパレータを使用する CSS セレクタが可能になります:
#phoneForm-phoneTable { background: pink; }
4.フォーム ID の先頭付加を無効にする (JSF 1.2 ):
コンポーネント ID にフォーム ID を先頭に付加するデフォルトの動作を無効にします。