4

div を選択するにはどうすればよいですか?

<div id="languageForm:j_id427:0:j_id432">Test</div>

このコードは機能しません

#languageForm:j_id427:0:j_id432 { color:#00aa00; }

. . . . . . . . . . . . . . . . . . .

4

2 に答える 2

7

:は CSS の特殊文字です ( :hover)

\00003Aそれをエスケープするために使用します:

#languageForm\00003Aj_id427\00003A0\00003Aj_id432 { color:#00aa00; }

jsfiddle

注: IE7 では動作しない\:ため、使用しないでください。

なぜ0s が多いのですか?ブラウザは、CSS ファイルの Unicode 定数を解析するために最大 6 文字を読み取ろうとするためです。ゼロがないと、読み取っ\3Ajてエラーで停止します。

于 2013-07-16T08:55:07.157 に答える
2

セレクターに含まれているため、バックスラッシュを使用:してエスケープする必要があります。これを使用します\

#languageForm\:j_id427\:0\:j_id432 { 
     color:#00aa00; 
}

デモ

注: 古いブラウザーではエスケープに失敗する可能性があります。この場合、コロンに相当する \3a を使用できます。

#languageForm\3a j_id427\3a 0\3a j_id432 { 
    color:#00aa00; 
}

デモ( の後のスペースに注意してください\3a)

(( ) ソリューションを使用する場合は、アーロンの回答を参照することを検討してください)\3A

于 2013-07-16T08:49:04.470 に答える