HTML 4 仕様より :
HTML 4 の場合、技術的な答えは次のとおりです:
HTML 5 はより寛容で、ID に少なくとも 1 文字が含まれることのみを要求し、スペース文字を含めることはできません。
では、id 属性では大文字と小文字が区別されます。 純粋に実用的な観点から、特定の文字を避けたほうがよい場合があります。 CSS セレクターでは、ピリオド、コロン、ポンド記号は特別な意味を持っているため、CSS で
を使用するか、jQuery に渡される セレクター文字列で二重バックスラッシュを使用する必要があります。バー を使用して、これらの文字をエスケープしてください。スタイルシートまたはコードでは、ID にピリオドとコロンを使用するかどうかを決定する前に、文字をエスケープする必要がある頻度を考慮してください。 たとえば、HTML 宣言
は有効です。この要素は、CSS では #first\.name として、jQuery では $('#first\\.name') として選択できます。ただし、バックスラッシュ $('#first.name') を忘れた場合は、first の ID を検索し、Element のクラスを持つ完全に有効なセレクターが得られます。 ###名前###。これは見落としがちな間違いです。長期的には、ID を first-name (ピリオドの代わりにハイフンを使用) として選択することをお勧めします。 命名規則に厳密に従うことで、開発タスクを簡素化できます。たとえば、小文字のみに完全に制限し、常にハイフンまたはアンダースコアを使用して単語を区切る場合 (ただし、ハイフンとアンダースコアの両方を使用することはできません。どちらかを選択し、もう一方は使用しないでください)、覚えやすいパターンが得られます。 first_name と入力する必要があることが常にわかっているため、「
#first\.name
$('#first\\.name')
$('#first.name')
first
first-name
first_name
なのか FirstName なのか?」と迷うことはありません。キャメルケース命名法を好みますか?次に、キャメルケースのみに制限し、ハイフンやアンダースコアは使用せず、最初の文字には常に大文字または小文字を一貫して使用し、混合しないでください。 現在、非常にまれな問題は、少なくとも 1 つのブラウザ Netscape 6 が、id 属性値を大文字と小文字を区別する
FirstName
現在、非常にまれな問題は、少なくとも 1 つのブラウザ Netscape 6
(小文字の 'f') を入力し、CSS に #FirstName { color: red } (大文字の 'f') を入力した場合を意味します 'F' ')、欠陥のあるブラウザは要素の色を赤に設定できません。編集時点 (2015 年 4 月) では、Netscape 6 をサポートする必要はないと思います。これは歴史的なメモだと考えてください。
HTML 4 仕様より :
よくある間違いは、数字で始まる ID を使用することです。HTML 4 の場合、技術的な答えは次のとおりです:
HTML 5 はより寛容で、ID に少なくとも 1 文字が含まれることのみを要求し、スペース文字を含めることはできません。
#XXHTMLでは、id 属性では大文字と小文字が区別されます。 純粋に実用的な観点から、特定の文字を避けたほうがよい場合があります。 CSS セレクターでは、ピリオド、コロン、ポンド記号は特別な意味を持っているため、CSS で
バックスラッシュを使用するか、jQuery に渡される セレクター文字列で二重バックスラッシュを使用する必要があります。バー を使用して、これらの文字をエスケープしてください。スタイルシートまたはコードでは、ID にピリオドとコロンを使用するかどうかを決定する前に、文字をエスケープする必要がある頻度を考慮してください。 たとえば、HTML 宣言
<div id="first.name"></div>は有効です。この要素は、CSS では
命名規則に厳密に従うことで、開発タスクを簡素化できます。たとえば、小文字のみに完全に制限し、常にハイフンまたはアンダースコアを使用して単語を区切る場合 (ただし、ハイフンとアンダースコアの両方を使用することはできません。どちらかを選択し、もう一方は使用しないでください)、覚えやすいパターンが得られます。
firstName#first\.name
として、jQuery では$('#first\\.name')
として選択できます。ただし、バックスラッシュ$('#first.name')
を忘れた場合は、first
の ID を検索し、Element のクラスを持つ完全に有効なセレクターが得られます。 ###名前###。これは見落としがちな間違いです。長期的には、ID をfirst-name
(ピリオドの代わりにハイフンを使用) として選択することをお勧めします。first_name
と入力する必要があることが常にわかっているため、「なのか
として誤って扱うことです。これは、HTML にFirstName
なのか?」と迷うことはありません。キャメルケース命名法を好みますか?次に、キャメルケースのみに制限し、ハイフンやアンダースコアは使用せず、最初の文字には常に大文字または小文字を一貫して使用し、混合しないでください。現在、非常にまれな問題は、少なくとも 1 つのブラウザ Netscape 6
が、id 属性値を大文字と小文字を区別するid="firstName"
(小文字の 'f') を入力し、CSS に #FirstName { color: red } (大文字の 'f') を入力した場合を意味します 'F' ')、欠陥のあるブラウザは要素の色を赤に設定できません。編集時点 (2015 年 4 月) では、Netscape 6 をサポートする必要はないと思います。これは歴史的なメモだと考えてください。