spanを使わずに文字列の一部を赤色にする方法

このQ&Aのポイント
  • HTML/CSSについて質問です。文字列の一部を赤色にしたい場合、<div style="display:inline;color:#FF0000;"> samplesamplesample </div> という書き方が可能です。
  • しかし、HTML5では<font>タグは禁止されていますので、使用する場合は避けたほうが良いです。
  • 代わりに、<span>タグを使わずに文字列の一部を赤色にする方法としては、<div>タグを使って以下のように記述することができます。 <div style="display:inline;color:#FF0000;"> samplesamplesample </div>
回答を見る
  • ベストアンサー

spanを使わずに文字列の一部を赤色にする方法

HTML/CSSについて教えてください。 文字列の一部を赤色にしたいとき、インラインで記載すると以下のようになると思います。 <span style="color:#FF0000;"> samplesamplesample </span> 上記内容を、 「span」を使わずにインラインで記載する方法を教えて欲しいです。 (HTML5用でお願いします) ※ググったところ、 <div style="display:inline;color:#FF0000;"> samplesamplesample </div> という書き方でよさそうに思うのですが、詳しくないのでよく分からず・・。 <font style="color:#FF0000;"> samplesamplesample </font> という書き方が、やりたいことに最も近い気がしますが、HTML5では禁止?されていると知りました。 恐れ入りますが、どなたかよい方法をお教えくださると嬉しいです。

  • 6z6-0
  • お礼率100% (17/17)
  • CSS
  • 回答数4
  • ありがとう数8

質問者が選んだベストアンサー

  • ベストアンサー
  • t_ohta
  • ベストアンサー率38% (5069/13245)
回答No.4

> div を無理やりインライン要素にするのは好ましくないとのことですが、方法としては認められている書き方と理解してよいのでしょうか。 div でも p でも table でもなんでもスタイルシートでインライン要素にして使う事は可能です。 まぁ使うんであれば b , em , i タグあたりを使った方がいいかもしれませんね。 font タグはHTML5では廃止されていて存在しません。

6z6-0
質問者

お礼

具体的な回答をいただき、ありがとうございます。助かりました。 お礼が遅れてしまい申し訳ございません。 また何かありましたら、質問させていただきたく存じます。 よろしくお願いいたします。

その他の回答 (3)

  • oboroxx
  • ベストアンサー率40% (317/792)
回答No.3

<div>だと改行が起きてしまうと思うので、文章の途中だけを赤い文字にするのには不向きではないでしょうか。 ほかの方も言っているように、<span>でいいのではないでしょうか。

6z6-0
質問者

お礼

お礼が遅くなって申し訳ございません。 回答いただきありがとうございました!

6z6-0
質問者

補足

前提が抜けておりました。 span に対しては、別のスタイルがCSSで当たっています。また、使用中ツールの都合によりspanにクラス名を振ることができません。そのためspan を使わない方法を探しています。

noname#248980
noname#248980
回答No.2

あなたの言う通り <div style="display:inline;color:#FF0000;"> samplesamplesample </div> が一番適切だと思います。 fontタグはhtml5で使ってはいけない訳ではありませんが、廃止済なので、今後ブラウザが非対応になる可能性が0ではなく、避けるべきです。

6z6-0
質問者

お礼

お礼がおそくなってしまい申し訳ございません。 ありがとうございました!

6z6-0
質問者

補足

前提が抜けておりました。 span に対しては、別のスタイルがCSSで当たっています。また、使用中ツールの都合によりspanにクラス名を振ることができません。そのためspan を使わない方法を探しています。 HTML5の考え方について承知しました。 div を無理やりインライン要素にするのは好ましくないとのことですが、方法としては認められている書き方と理解してよいのでしょうか。

  • t_ohta
  • ベストアンサー率38% (5069/13245)
回答No.1

なぜ span を使いたくないのでしょうか? span は質問者さんがやりたいような事をするためのタグですから、span を使うのが正しい選択だと思います。 display:inline; はその要素をインライン要素として扱うためのスタイルですから、これを付ければどのようなタグでもインライン要素に変えられます。 しかし、タグはタグ本来の意味で使用しましょうというのが HTML5 の考え方ですから、違う目的のタグを無理やりインライン要素に切り替えて使うのは好ましくないと思います。

6z6-0
質問者

お礼

お礼が遅くなって申し訳ございません。 何度も回答いただきありがとうございました!たすかりました!

6z6-0
質問者

補足

前提が抜けておりました。 span に対しては、別のスタイルがCSSで当たっています。また、使用中ツールの都合によりspanにクラス名を振ることができません。そのためspan を使わない方法を探しています。 HTML5の考え方について承知しました。 div を無理やりインライン要素にするのは好ましくないとのことですが、方法としては認められている書き方と理解してよいのでしょうか。

関連するQ&A

  • モバイルサイト<3キャリア>:auでwidth指定が無効化される?

    モバイルサイト<3キャリア>:auでwidth指定が無効化される? 3キャリア共通仕様のHTMLサイトを作成しています。cssはインラインで使用しています。 あ行 あ い う え お か行 か き く け こ... のような「あいうえお表」を挿入したいのですが、タイトルのとおりauで表示が崩れます。 実現したい仕様は添付画像の【docomo,Softbank】のような形で、この2キャリアでは問題なく表示されています。 が、【au】で見ますとそれぞれの要素のwidth指定が無視され、100%表示されてしまっているようです。 該当部分のソースは、以下のとおりです。 <div style="background-color:#FFF; padding:5px; margin:0;"> <div style="background-color:#FFF; padding:5px; margin:0; width:10px; height:15px; display:inline;">あ行</div> <div style="border:#333 1px solid; background-color:#FFF; width:15px; height:15px; padding:3px; margin-right:3px; display:inline;"><a href="list_a.html"><font color="#FF0066">あ</font></a></div> <div style="border:#333 1px solid; background-color:#FFF; width:15px; height:15px; padding:3px; margin-right:3px; display:inline;"><font color="#FF0066">い</font></div> <div style="border:#333 1px solid; background-color:#FFF; width:15px; height:15px; padding:3px; margin-right:3px; display:inline;"><font color="#FF0066">う</font></div> <div style="border:#333 1px solid; background-color:#FFF; width:15px; height:15px; padding:3px; margin-right:3px; display:inline;"><font color="#FF0066">え</font></div> <div style="border:#333 1px solid; background-color:#FFF; width:15px; height:15px; padding:3px; margin-right:3px; display:inline;"><font color="#FF0066">お</font></div> </div><!--a end--> 思いつくままにスタイルを追加したので、その中に両立しないものがあるのかなと思うのですが、なにぶんまだ不勉強で・・・ tableで組み直すことも考えたのですが、それぞれのboxをborderで囲みたいのと間隔を空けたいため、ソースが今以上に膨大になってしまう気がして踏ん切りがつきません。 ここを直せばいい、tableでも組める等、お知恵をお貸しください。よろしくお願いいたします。

    • ベストアンサー
    • HTML
  • 文字色が反映されない

    ホームページ作成でフォントの色を変えるのにcssで .under { color: #FE5936; border-bottom: 2px solid #e5e5e5"; font-weight: bolder; display:inline; } .green { color: #006C36; font-weight: bolder; } .red { color: #FF0000; font-weight: bolder; } .orange { color: #FF8000; font-weight: bolder; } と、設定してHTMLで<span class="○○">AAA</span>として文字の色を変えています。 いくつかHPがあって今までもそのように設定していたのですが、今更新の作業をしていて、更新作業中のサイトだけ<span>の設定が反映されているところと反映されていないところ(されていないところが大半)になってしまっていて困っています。 上記のunderは反映されるのですが、<span class="red">AAA</span>など、under以外反映されず、bodyで設定したcolorになっています。redをunderにすると反映されたりするので、redの設定がまちがってるのかと、cssの部分を打ち直したりしても変わらずです。{}で閉じてあるし、タグも</span>で閉じてあるし、display:inline;は直接関係ないと思うのですが。。。 同じCSSを使っている他のサイトでもこんなことがなかったので、どうしたらいいのか途方にくれています。 fontタグでやればできないことはないけど、cssで解決したいので、何か考えられる原因があれば教えてください。

  • 文字列の<>で囲まれた文字列を一括削除する方法

    サイトのソースで、本文に<br>、</div>などのHTMLタグが挿入されていますが、 これらのタグを一括して削除する方法はないでしょうか。 私が最初に試したのは、ソースをメモ帳に張り付けて、置換機能を利用して ワイルドカードを使い、<*>の文字列を空白に置き換える方法ですが、 上記のようなタグがあるにも関わらず、該当する文字列がないと エラー表示され置換できません。 具体的には、以下のように編集したいです。 (置換前) <div class="t_h ">7: <span style="color: green; font-weight: bold;">名無しさん</span> <span style="color: gray;"> 2013/09/26(木) 15:55:59.62 ID:FahaifvL0</span></div> <div class="t_b " > 山田太郎だったら営業に有利そうだな </div><br /> (置換後) 7: 名無しさん2013/09/26(木) 15:55:59.62 ID:FahaifvL0 山田太郎だったら営業に有利そうだな どなたかいい方法を教えていただけますでしょうか。 よろしくお願いします。

  • DreamWeaverMXでスタイルシートを使わない方法

    DreamWeaverMXを使用しています。 文字に色をつけたり大きさを変えたりするときに、自動的にスタイルシートでタグが入力されてしまいます。 例えば赤文字にしたときに <font color="red">赤い文字</font> こうしたいのに <head> <style type="text/css"> <!-- .style1 {color: #FF0000} --> </style> </head> <body> <span class="style1">赤い文字</span> </body> こういうタグが入ってしまいます。 これをHTMLだけのタグがはいるようにしたいのですが、そういう設定方法はないでしょうか? ご存知の方がいましたらよろしくお願いします。

  • 一部の文字列の右寄せについて

    以下の例のとおり文字列の横に赤と書き赤の文字だけを装飾し右寄せします。 これはテーブルの中に書いているのですが、文字列が長くセル内で折り返し2行で 表示された際に赤の文字は3行目に右寄せされてしまいます。 これを2行目に表示させることはできないでそうか。 よろしくお願い致します。 .right { text-align:right; } .aka { background-color:#FF0000; } あいうえおかきくけこ<DIV CLASS="right"><SPAN CLASS="aka">赤</SPAN></DIV>

  • HTMLのタグ属性で指定された特定文字列を置換する

    HTMLで、開始 < と終了 > に囲まれた特定の文字列を別の文字に書き替えたいのですが、思う通りに動かなくて困っており、質問させていただきます。 例えば以下の2行のHTMLがあったとします。  <font color="red">赤は英語でredです。</font>  <span style="color:red;">赤は英語でredです。</span> このHTMLで、タグの属性として使われている「color="red"」と「style="color:red;"」の部分だけ「red」を「black」に変更したいのです。 (文字列として使われている「英語でredです」の部分はそのまま) 秀丸やさくらエディタで正規表現を使って検索すると、 <.+?red.+?> で検索できましたがJavaでは検索ができません・・・。 コード: String strHtml = "<html><body><font color=\"red\">赤は英語でredです。</font><span style=\"color:red;\">赤は英語でredです。</span></body></html>"; Pattern pattern = Pattern.compile( "<.+?red.+?>", Pattern.DOTALL ); // 正規表現で検索 Matcher matcher = pattern.matcher( strHtml ); while( matcher.find() ){ System.out.println( "res=" + matcher.group( 0 ) ); } 出力結果: res=<html><body><font color="red"> res=</font><span style="color:red;"> res=<html><body><font color="red">赤は英語でredです。</font><span style="color:red;">赤は英語でredです。</span></body></html> エディタと同じように<font color="red">と<span style="color:red;">が取りたいのですが・・・、考え方もしくは正規表現が間違っているのでしょうか? お分かりの方がいましたら御助力いただけたら助かります。 よろしくお願いします。

    • ベストアンサー
    • Java
  • スタイルシートでレイアウトしたいのですが出来ません。

    <a href="○○.html" onmouseover="txt1.style.display='block'" onmouseout="txt1.style.display='none'"> ○○タイトル○○</div></a> <span id="txt1" style="display:none;position:absolute; border:3px solid #ff0000;color:#FF0099;background-color:#FFFFCC;"> ○○説明文○○</span> 上のような<txt>タグが全部で20個以上あるので (つまりtxt1~txt20まであります) CSSでレイアウトしたいのですがうまくいきません。 上のタグをCSSでどのように定義づけたら <div class>で作れるようになるか教えてください。

  • 触れたときに文字の色を変える方法

    こんばんは。 リンクを貼った文字を最初は赤にし、触れたときに桃色にしようと思っています。 <head></head>の中に <style type="text/css"> <!-- a:hover{color:pink;} --></style> とし、 <A href="アドレス"><font size=2 color=red>文字</font></A> のようにリンクを貼りました。 しかし、赤のままで触れても桃色になりません。 フォントで囲むのをやめると、文字は青で触れたら黄色になりました。 どうすれば私のしたいようにできるでしょうか? ご指導よろしくお願いいたします。

  • <SPAN>で文字を右揃えにしたいのですが...(^-^;

    こんばんは。私は今HPを作っています。 それで質問なんですけど、 HTMLで<SPAN>ってタグありますよね? それにCSSを使って(? <SPAN>で囲まれた場所を 文字を右揃えに表示させたいのですが、何故かうまくいきません。 <SPAN style="text-align: right">○○</SPAN> このようなタグで使いました(上) 何故なのでしょう、教えてください。 よろしくお願いします。 ちなみに、このようなものをつくりたいのです。(下) リンク集なんですけど; HPタイトル   管理者名 ――――――――――――――― バナー ――――――――――――――― このHPの説明 これの管理者名のところを右揃えに表示したいのだが、 うまくいかないのです;<DIV>だと改行されてしまうし...

    • ベストアンサー
    • HTML
  • カーソルを当てると真下に説明文が来て困ってます。

    <div class="sub3"><img src="○○.gif"> <a href="http:○○.html" onmouseover="txt4.style.display='block'" onmouseout="txt4.style.display='none'"> ○タイトル○</div></a> <span id="txt4" style="display:none;position:absolute; border:3px solid #ff0000;color:#FF0099;background-color:#FFFFCC;"> ○説明文○ </span> と記入したのですがカーソルを当てると説明文が 真下に来てしまいます。 右横に来るようにするにはどうしたら良いでしょうか? なお<div class="sub3">というのは .sub3 { width: 180px;     height: 8px;     padding: 2px 7px 0px 0px;      font-weight: bold;     color: #ff69b4; font-size:11px; } という定義です。 どうしたら真下でなく横に説明文の枠が来るようにできますか?

専門家に質問してみよう