プロが教えるわが家の防犯対策術!

html内でリストを使っています。
一覧の中で一部にだけ文字色を変えたいので、以下のように書いてみました。

<ul>
<font color=red><li>AAA</li></font>
<li>BBB</li>
<li>CCC</li>
</ul>

ですが、反映されませんでした。

以前、リストの中はタグがあまり使えないと教えていただいたのですが、色も染められないのでしょうか?
変えたい場合は、どのようにすればよいでしょう。
方法をご存じの方は、是非お教えください。
宜しくお願いします。

A 回答 (3件)

HTMLタグの要素は外側から順に適用されていきます。

なので…

・<span style="color:red;"><li>あああ</li></span>
~だと、まず<span>が適用され、その後に<li>の要素が上書き適用されます。もし何かフォント色などに関する設定が<li>になされていた場合、いくら<span>で何かを必死に適用させようとしても、最終的に<li>の設定が勝ってしまいます。

・<li><span style="color:red;">あああ</span></li>
~この様にすれば、同じ理由で最終的に文書に適用されるのが<span>の要素になるので、色などを自由にコントロール可能になります。

この法則はHTML全般に言える事なので、良く覚えて置いて下さい。

P.S.
<font>タグは最近は非推奨になったので、同様の効果を持つ <span style="color:red;"> で置き換えてみました。
    • good
    • 0
この回答へのお礼

ご回答いただいて、ありがとうございました。
現在は非推奨だったんですね。
そんなこととは露知らず、初心者質問でお恥ずかしい限りでした…。
外側から順に適用されるんですね。
<span style>というタグも教えてくださって助かりました。
非常に参考になりました。ありがとうございます!

お礼日時:2011/08/11 19:11

基本中の基本ですが、インライン要素とブロック要素をしっかり理解してください。


<font></font>はインライン要素で、中にブロック要素は含むことは出来ません。
<li></li>はブロック要素でしかも内部にインライン要素もブロック要素も含むことが出来ますから、
<font><li></li></font>
は書けませんが
<li><font></font></li>
はOKです。

 とっても重要なことなのでしっかりと・・・
★内部的には、ulの内部のliの前に何かがあれば、ブラウザはulにはliしか含むことが出来ないので、
<ul>
 <li><font></font></li>
 <li>テキスト</li>
 <li>?</font><?li>
</ul>
 と解釈する場合があります。ブラウザによって異なる。この場合テキストには色はつかない

★fontは、使わないことが強く推奨されています。

 いずれにしても、仕様書だけはいつもチェックするようにしましょう。これらのことは皆書いてあります。はじめはとっつきにくいですが、それはあやふやな記述を避けるためにそうなっているだけ、慣れれば意味がわかるようになります。
HTML 4.01仕様書 ( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )

<!ELEMENT UL - - (LI)+ -- unordered list -->
 ↑この意味は、要素 ULは、LIを一個以上(+)のみ含みうる 順不同リスト

<!ELEMENT LI - O (%flow;)* -- list item -->
 ↑この意味は、要素LIは、%flow(何でも)をゼロ個以上(*) 含む箇条書きの項目

 10.2 順不同リスト (UL)、序列リスト (OL)、及びリスト項目(LI) ( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )

【引用】____________ここから
15.2.2 フォント変更要素: FONT要素とBASEFONT要素 FONT要素とBASEFONT要素は推奨しない。
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ここまで[Alignment, font styles, and horizontal rules in HTML documents (ja)( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )]より

 HTMLを勉強し始めたら、必ずHTML4.01strictだけを学び、書いては
Another HTML-lint gateway ( http://openlab.ring.gr.jp/k16/htmllint/htmllint. … )
でチェックするとよいです。
    • good
    • 0
この回答へのお礼

ご回答いただいて、ありがとうございました。
ご丁寧にurlも教えてくださって…。
どれも知らないサイトで、とても参考になります。
ちょっと読解をすらすらというわけにはいきませんが、
時間をかけてゆっくり読んでいきたいと思います。
ありがとうございました!

お礼日時:2011/08/11 19:13

<li><font color="red">AAA</font></li>


の順序にしない理由は?
    • good
    • 0
この回答へのお礼

ご回答いただいて、ありがとうございます。
一度そちらで書いてみたのですが、ブラウザプレビューで上手く反映されなかったので外側に付けてみたんです。
ですが、今後は<span>を使ってみることにします。
ありがとうございました。

お礼日時:2011/08/11 19:16

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!