LoginSignup
1
1

More than 5 years have passed since last update.

Ghostで画像にclass指定する方法

Last updated at Posted at 2016-02-10

はじめに

GhostはMarkdownでブログ記事がかけて非常に楽な反面、スタイル指定が難しいことがあります。
例えばBootstrapを使っているときに、画像にimg-responsiveimg-fluidを指定したい場合、うまい設定方法が提供されていないように思われます。

対策として、stackoverflowの方法をアレンジしてjQueryでclass指定するようにしてみました。

仕組み

Ghostで画像を埋め込む際のパラメータとして使えるのはsrc属性ぐらいしかないため、ここにクエリを入れるか、またはフラグメントを入れるぐらいしか方法は無いように思われます。
ここではフラグメントを使うことにします。

Markdown

![](src#フラグメント)

#フラグメントのところに、目的のクラスであるimg-responsiveなどを入れて、jQueryで操作します。

JavaScript(インジェクションか、テーマをいじって入れます)

$("[src*='#']").attr("src", function (i, value) {
  var fragment = value.substring(value.indexOf('#')).replace('#', '');
  $(this).addClass(fragment);
});

出力例

Bootstrap v4.0.0-alpha.2を使っています。

Markdown

<div class="row">
  <div class="col-md-4 m-b-2">
![](https://placekitten.com/400/300?image=1#img-fluid)
  </div>
  <div class="col-md-4 m-b-2">
![](https://placekitten.com/400/300?image=2#img-fluid)
  </div>
  <div class="col-md-4 m-b-2">
![](https://placekitten.com/400/300?image=3#img-fluid)
  </div>
</div>

結果
placekitten.jpg

オチ

一旦Markdown記法で画像を入れた後に、ソース上で表示されるパスをコピーして、imgタグに書き換えれば普通にクラス指定ができることに気が付きました。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1