*

CSSのみでhtmlタグの中に文章を挿入する方法があります

公開日: : 最終更新日:2015/10/29 ノウハウ

オフィス画像

ウェブサイトの中で html の編集が出来ない場所に文章を書くなど編集する事は出来ません。一見当たり前の事を言っているだけです。しかし、CSS なら出来てしまうかもしれません。

htmlの編集が出来ない場所とは

html の編集が出来るならそこに文章を追加するなりすれば良いだけです。しかし、html の編集が出来ない場所も場合によっては存在します。自分で全て作ったサイトなら編集できない場所などないと思いますが、システム的に作られたウェブサイトには html の編集が出来ない場所が存在する場合があります。

例えば、ネットショップであれば会社概要が書かれている場所などです。通常あのような所は html の直書きをしているわけではなく、プログラムで作られている事がほとんどです。その為、そのページの html の編集は出来ない事がほとんどです。

CSSならそんな場所に追記が出来るかも

前述のような編集が出来ない場所に何かしら追記したいという事がレアケースながらにあるかもしれません。普通なら仕様にない事なので出来ませんで片付くかもしれませんが、CSSなら追記ができるかもしれません。もちろん出来ないかもしれません。

出来る場合

可能である条件は2つあります。

  • ページに外部 CSS を読み込む事ができる。
  • 編集したい周辺のタグにクラスか ID が指定されている。

例を挙げますと、楽天、Yahoo!ショッピング、ポンパレモールでは可能です。

CSSで文章を追記する

簡単な例を出します。以下のようなテーブルがあり、それはシステム的に作られているものでテーブル内には各項目以外の文字は入力できない。電話番号欄には1つの電話番号しか載せられないですが、電話と FAX 番号を2行で表示したい場合というケースを想定します。

expsample1

CSS の擬似クラスや擬似要素を活用すれば実現が可能です。

<table width="540" border="1" class="example">
<tr>
    <td>会社名</td>
    <td>○○××</td>
</tr>
<tr>
    <td>住所</td>
    <td>○○県○○市</td>
</tr>
<tr>
    <td>電話番号</td>
    <td>***-****-****</td>
</tr>
</table>

上記のような table タグに以下の CSS を適用します。

table.example tr:nth-child(3) td:nth-child(2):after{
    content: "¥A***-****-****(FAX)";
    white-space: pre;
}

適用した結果は以下のようになります。編集ができない場所でも CSS を使って文章を追加する事が可能なのです。

expsample2

解説

肝となるのは「:nth-child」と「:after」の部分です。nth-child は擬似クラスといって「table.example tr:nth-child(3)」と指定すると、exampleクラスのテーブル内にある3番目の tr タグという意味になります。更に「td:nth-child(2)」でその tr タグの中の2番目の td タグを指定しています。

:after は擬似要素といって、その要素の後に指定した内容を追記するというものです。前に追記する「:before」もあります。

そして、CSS の content プロパティに追記したい内容を書きます。上の例にある ¥A は改行の意味です。 合わせて「white-space: pre;」を指定しないと改行されないので注意。あと、IE6とIE7には対応できません。

おわりに

今回は table タグを例に出しましたが、リストの ul li タグの何番目という指定もできるので各タグで様々な応用ができます。html の編集が出来ない場所に文章を追加したいという特異な例でしたが、こんな方法もありますよという事で参考になれば幸いです。

上部広告

  • Pocket

おすすめトピックス

関連記事

イメージマップ
mapのareaリンクにロールオーバーを実現する簡単な代替策

一つの画像内に複数のリンクを貼る事ができる html の map タグと area タグがあります。これをイメージマップと言います。このイメージマップを使ってとあるコンテンツを作っていたのですが、画像内のリンク領域にマウ […]

プレースホルダ
検索窓に薄い文字を入れて何を入力するのか分かりやすくするプレースホルダ

ネット上で何かを検索したい時、どこを見ますか? そう、検索窓ですよね。検索窓は EC サイトやネットショップ、何かを検索する必要があるウェブサイトには大概付きものでお馴染みのものです。 たまに見るのが検索窓に薄い文字で予 […]

https通信下でjavascriptが動かない場合の対処法

https 通信下で javascript が動かない!とお困りという事は、もしかしてあなたのページは特定のページだけ https 通信を行っているのではないでしょうか?例えばログインページ、決済ページのみ暗号化を行う […]

画像付きリスト
関連記事などに画像付きリストをCSSで簡単に作るサンプル

画像つきリストとは上図のようなイメージです。しばしばブログなどでは関連記事や人気記事の表示などに使われている事が多いですし、インターネットショッピングサイトではサイドメニューの商品カテゴリリストに採用されています。 ポイ […]

リファラーによってiframe内のリンク先をjavascriptで変更する

リファラーによってインラインフレーム内にあるリンクのリンク先を変えれたら便利になるなと思って javascript で自作してみました。こんな事したいと思う人は多分いないニッチなものだと思います。 どういう時に使いたかっ […]

スマホサイト
プラグイン無しで簡単に実現するスマホサイトの上からドロワーメニューの作り方【jQuery】

近年どこでもスマートフォン向けサイトが用意されているのが当たり前です。スマートフォンを使っていればいつも何気なしにスマートフォンサイトを見ていると思います。 そのスマートフォンサイトをちょっと思い出してみてください。 こ […]

上部広告

著者について

名前:Azell
作曲したり風景写真撮ったりWeb制作したりする人です。 好きな事を楽しくブログに綴れていけたらと思います。

フォローはこちら

       

上部広告

       
FOR HONOR(フォーオナー)PC版をGeforce GTX960でプレイした感想

侍が登場するゲームが出ると聞いて大変興味が沸いたゲームがありま

チキンガンボ
札幌でアメリカン料理が楽しめるダイニングバー「BUDDY BUDDY(バディバディ)」でディナー

札幌には和食、イタリアン、パンケーキ、様々な飲食店がありますが

ピクルス
ピクルスとは何か?実はきゅうりを指す言葉ではなかった

ピクルスと聞いて何を思い浮かべるでしょうか?日本でも一般的な食

釜飯
新千歳空港で新鮮な海鮮釜飯が食べられる「北海道釧路ふく亭」は穴場

新千歳空港で特にあてもなく晩御飯を食べる所を探していたのですが

チキンカレー
札幌すすきのイタリアンバー「エゾバルバンバン」でサラダバー付き激安ランチ

札幌のすすきのへとある人気店へランチに出かけたのですが、とんで

→もっと見る