No.1
- 回答日時:
解りやすそうだな、これは。
P-0045 class と id の違いとは?
http://deztec.jp/x/01/tips/page/p0045.html
idはフラグメントにも使えるしねー
http://www.kanzaki.com/docs/html/htminfo12.html
ありがとうございます。
CLASSは分類、IDは分類に対する個々って感じの意味ですね。
2階層構造だったんですねーCSS。
なんか、「:」か「#」かわけわからなくなってきました・・・。
「:」はAタグの時にしか利用した事なくて・・・。
a:linkとかa:hoverとか。HTML側にid="xxx"書かなくていいし・・・。
CSS
table:footer {
border:1px solid;
}
HTML
<table id="footer">
<tr><td>
<font style="font-size:9pt">test</font>
</td></tr>
</table>
これだと動かないのですが、何が間違っているのでしょう?
No.2
- 回答日時:
<style type="text/css">
table#footer{
border-style:solid;
border-width:1px;
border-color:#000000;
}
</style>
<table id="footer">
<tr><td>
<span style="font-size:9pt">test</span>
</td></tr>
</table>
「:」って、ただアトリビュートの設定時の利用で、
ID自体は「#」ですか。
やはりIDは「#」ですよね。
なんか、CSSについてゼロから学びそうな勢いで混乱して参りました(笑)
ありがとうございます。
No.3
- 回答日時:
>「:」って、ただアトリビュートの設定時の利用で、
>ID自体は「#」ですか。
基本的に "." がクラスで "#" が ID です。
ただし A:link などはリンクを設定する擬似クラス、特殊なパターンです。
No.4
- 回答日時:
クラス…同ページ内で同じクラスを何回でも使える。
ID…同ページ内で同じIDは一回しか使えない。
「cssでIDを使う」のではなく、「IDにcssを設定する」と考えたほうがいいです。
む・・・難しいですね・・・。
ID自体は1ページ内で何度も使えるんですよね?
動作はするみたいですが・・・。
何度も設定する事が出来ない??
cssファイルでID(A)を設定していて、
htmlファイルでcssファイルをリンク後に同じID(A)を設定したら
適用されるID(A)はhtmlファイルで設定した方、
という事でしょうか?
<a href="./#test">aaa</a>
<a name="test">bbb</a>
という意味なら確かに1回しか使えませんが、
これってCSSのIDと関係があるものなのでしょうか?
No.5
- 回答日時:
>ID自体は1ページ内で何度も使えるんですよね?
>動作はするみたいですが・・・。
>何度も設定する事が出来ない??
>cssファイルでID(A)を設定していて、
IDと要素名は別物です。
上手く説明できるか分かりませんが……
idはいうなれば「固有名詞」です。
<h1 id="title">あいうえお</h1>
「title」という識別子を割り当てた「h」要素です。
titleという名前の付いた要素に対し、cssで指定ができます。
#title{color:#0000ff;}/* id指定。文字色青 */
文字色青のIDをh要素につける、のではなく、
id="title"が付いているh要素の文字色を青くする、と考えます。
id(識別子)はJavaScriptなどにも使いますね。
同じIDが複数あると、JavaScriptではエラーになります。
<h1 class="title">あいうえお</h1>
「titleという定義付け」したcssを「h」要素に関連付けています。
.title{color:#ff0000;}/* class指定。文字色赤 */
文字色赤に定義付けたクラスセレクタ(title)を、
class=""で呼び出す、という感じです。
<a name="test">bbb</a>
の「name=""」は「name属性」であって、ID(属性)ではないです。
href="./#test" の#testは「id名」ではないです。
む~・・・考え方の違いははっきりと分かりました。
が、結局どっちも挙動が一緒・・・。
id=xxx、class=xxxとしなければ有効にならない点から見たら、
idをclassとして利用してもいい気がします。
1つのタグ内で複数のidを利用する事は不可能なのですよね?
class、idを正しく利用した場合に有利になる点は
一体どこにあるのでしょうか?
No.6
- 回答日時:
同じidは1個しかあってはいけないことになってます。
2つ以上同じIDがあるとエラーとなるので初めの1個目以外のidは無効になります。
必ず1つしかない(ことになってる)ので
どの部位をコントロールするか明確にしないとならないJavascriptなどでは
よくidを指定して使用します。
CSSに限って言えばidを使うメリットはあまりないですね。
class要素はCSS専用っぽいところはありますが、id要素はCSS以外に使われることが多いように思います。
ありがとうございます。
ごめんなさい、教えてください^^;
<style type="text/css">
#fblue{
color:blue;
}
#fblue{
font-size:3pt;
}
</style>
<table border=1>
<tr><td id="fblue">abc</td></tr>
<tr><td id="fblue">def</td></tr>
</table>
<h3 id="fblue">ghi</h3>
これを実行するとタグ側3つともidは有効ですし、
css側(面倒だったのでstyleタグにしましたが)2つも有効になっています。
もしかして『1つ』の意味合いを勘違いしていますか?私。
それともcssで同名複数のid指定は出来るけど、しない方が良い、という事ですか?
それを真とするならば、cssで同名複数のclass指定は良しなのでしょうか?
No.7
- 回答日時:
>href="./#test" の#testは「id名」ではないです。
すみません。この点、ページ内リンクでIDを呼び出す(移動する)ことも可能なのを思い出しました。
そういう意味では、#testは「id名」であるともいえます。
cssに限って言うなら、No.6さんのいうように、IDは使う必要がないですね。
何度も有難うございます。
cssはclassだけで事は足りる、という事ですね・・・。
完全に迷宮入りしてしまいました(笑)
今回の質問で、プログラムでいうとclassはクラス、idはextendsという
感覚かなー(以下のように)と思っていましたが、そうでもないようで・・・。
<style type="text/css">
.fblue{
color:blue;
}
font#pt15b{
font-size:15pt;
font-weight:bold;
}
</style>
<table border=1>
<tr><td class="fblue">abc</td></tr>
<tr><td class="fblue">def</td></tr>
</table>
<font class="fblue" id="pt15b">ghi</font>
これだと、<td>でも<font>でも色を青にしたくて、
でもghiを表示する<font>は15ptの太字にしたい、みたいな。
こういうパターンで初めてidの意味を成すのでしょうか?
あんまり気にする所でもないんでしょうかね?(笑)
No.8
- 回答日時:
まず HTML で
ID 属性:この属性は、要素に名前を割り当てる。この名前は文書中で一意でなければならない。
CLASS 属性:この属性は、ある要素に1つのクラス名を割り当てるか、または複数のクラス名を設定する。幾つの要素に対してでも、同じクラス名あるいはクラス名群が割り当てできる。複数のクラス名については、空白文字によって区切らねばならない。
とあり、それだけ診ると ID は不要で CLASS を用いる必要がない、場合によっては ID を用いる選択は不可という場合さえ(同一文書内で同じ指定を複数の箇所に用いたいとか、複数の指定を一箇所に付けたいとか・・・)あり・・・・・。
ただ、HTML として ID 属性はスタイルシートの選択子だけでなく、リンクのアンカーやスクリプトでの特定用とかいろいろ CLASS では出来ない事もあり・・・。
で、既に CSS の識別子以外で ID が用いられていれば、改めて CLASS を用いる必要性もなく・・・。
その上で本筋の CSS。 CSS の識別子として用いる場合の大事な事は、ID は CLASS より優先度が高くなるという事。
同じ要素に ID と CLASS が両方指定されていて、しかも指定内容が競合する場合は ID の指定が採用されます。
また CSS の指定方法には直接 ID, CLASS に個別に指定するだけでなく、組み合わせでいろいろな指定方法があります。そうなると優先度の影響は大きく・・・。
>利用する際、何を判断基準にすれば良いのでしょうか?
意図が何か。一意の名付けなら当然 ID だし、あるグループのひとつである事の明示なだけなら CLASS でしょう。
とは言っても、BODY 要素に CLASS 属性を付けるのは余程の必要性(複数の CLASS を指定したいとか)でなければ不自然だろうし・・・。なにせ BODY 要素はそもそも文書内で1つしかないはずだから、一意のはず・・・。
ソースの流用を考えた場合に、指定内容の優先度をどうするかとか・・・。JavaScript と組み合わせるとさらに・・・・・。
結局、作成者の能力と決め事次第かと・・・。
なにせ個別の指定にしか用いていなければ、優先度なんて関係ないし・・・。
参考URL:http://hp.vector.co.jp/authors/VA022006/css/corr …
No.9
- 回答日時:
No6です
CSSは同じid複数合ってもいいんですね。
(CSSはclassでしか指定したことなかったんで知りませんでした^^;)
HTMLは多少仕様外の構文でもブラウザが融通利かせて有効にしてしまうこともありますからねぇ。
ですが、CSS以外の部分が絡んでくるとやっかいなことになるので
同じidを複数はやめたほうがいいです。
(そもそもidの意味がなくなってしまう)
>今回の質問で、プログラムでいうとclassはクラス、idはextendsという
違いますね^^;
idとclassに継承関係はありませんからね。
idは個人名
classはグループ名
と考えればよいのでは?
<div id="nakai" class="smap">S</div>
<div id="kimura" class="smap">S</div>
<div id="inagaki" class="smap">S</div>
<div id="chonan" class="smap">S</div>
<div id="katori" class="smap">S</div>
idで指定→中井さ~ん(「い」が違う)赤くなって。
#nakai {
color:red;
}
classで指定→SMAPの皆さん、大きくなってください
.smap {
font-size:20pt;
}
> あんまり気にする所でもないんでしょうかね?
まぁCSSだけに関して言えばid指定が特に有用な場面、
idでないといけない場面てのが少ないでしょうから、
ほとんどclassで指定でいいと思います。
1つだけ違うスタイルにしたいならstyle要素に直接記述しちゃってもいいわけですし。
No.10
- 回答日時:
CSS でスタイル指定できるようにするために HTML に id/class を付ける、と言う考え方では、いつまでたっても id/class の違いは理解できません。
CSS のことは抜きにして、純粋に HTML のより良い書き方は何かと言う観点から考えてみてください。
http://oshiete1.goo.ne.jp/kotaeru.php3?q=1444936 …
http://web.xii.jp/iec/html/memo/id-class
http://www.tg.rim.or.jp/~hexane/ach/awht/awht07. …
http://deztec.jp/x/01/tips/page/p0045.html
<td style="font-size:10pt">
と
<style>
td#f10pt {
font-size:10pt;
}
<td id="f10pt">
の違いという事ですか。1度しか使わないという考え方からしたら、
このid(f10pt)は二度と使わないですよね。
はっきり言って前者の方で十分ですね。
HTMLファイル内にstyleタグを記述すればCSSファイルと
完全に切り分けられているわけでもありませんし・・・。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript jQueryで同じクラス名のものを別物として扱いたい 1 2022/06/17 14:14
- HTML・CSS HTML で使ってない CSSのクラスやID を消去してくれるツールはありませんか? 2 2022/08/25 18:07
- その他(IT・Webサービス) Yahoo!でログインしようとするとなぜか「不正利用が疑われる操作もしくは行為が検知されたため、利用 5 2022/11/01 16:07
- ヤフオク! Yahoo ID 新規登録について 2 2022/06/19 13:10
- ラクマ(楽天オークション) PayPayフリマ 1 2022/08/31 20:10
- YouTube YouTubeのコンテンツIDについて教えてください。 1 2022/05/18 08:13
- JavaScript WordPressのコンタクトフォーム7にて送信者の位置情報を送らせたい 2 2022/09/14 23:28
- Yahoo!メール YahooIDをパスワード形式にしただけなのに、利用規約違反とされて電話番号が使えなくなりました 1 2023/03/15 20:44
- gooメール スマホ乗り換え gooIDが現在使っているスマホのキャリアメールアドレスですが、乗り換えた場合 その 2 2022/03/30 13:32
- Yahoo!メール Yahoo!JAPAN 3 2023/07/07 18:08
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
clear bothで回り込みがうまく...
-
サイトにjQueryが使用されてい...
-
CSSを使うと<IMG>タグのHSPACE...
-
:hoverで他の要素の値を変更で...
-
CSSでテキストリンクの色を複数...
-
CSSでひとつだけdisplay:none;...
-
CSSに同じclass名がいっぱい‥。...
-
idの中のid指定
-
最近、HTMLのヘッダーをIDで定...
-
CSSで下まで背景色を伸ばす方法
-
CSSの適用を一部だけ除外したい。
-
個別にリンクの色を変える方法
-
セルの高さが変化しない(ワー...
-
CSSのホバーエフェクト
-
「CSSで1つの要素に複数のクラ...
-
htmlのid属性って必要なの?
-
リンク文字の 一部だけ色を変...
-
htmlの文字が縦書きになる
-
【ヒトの神秘】美男美女から何...
-
html/cssの、navを2段にする...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
idの中のid指定
-
CSSに同じclass名がいっぱい‥。...
-
個別にリンクの色を変える方法
-
HTML要素のid/class名の長さに...
-
最近、HTMLのヘッダーをIDで定...
-
CSS, リンクの色を一部変えるに...
-
liリストタグの背景色に色がつ...
-
CSSのクラス名・ID名の指定でワ...
-
htmlのid属性って必要なの?
-
サイトにjQueryが使用されてい...
-
スタイルシートで、id属性の中...
-
リンク文字の 一部だけ色を変...
-
外部css定義したclassをht...
-
ページの左右の余白(枠外)に...
-
<span>で2重にかけているものを...
-
CSSでテキストリンクの色を複数...
-
同ページ内でリンクの色を変え...
-
CSSが効かずどのように指定すれ...
-
display:table-cell内でこんな...
-
CSSで下まで背景色を伸ばす方法
おすすめ情報