エントリーに画像を挿入すると回り込みになる
MT4でエントリーに画像を挿入する際に、配置する位置を選ぶことができるのですが、右か左を選ぶと回り込み(float)になってしまい、単純1段落に1画像だけ置きたい場合、意図しない結果になってしまうことがあります。
特にWYSIWIGエディタを使わない場合が面倒で、画像の後にstyle="clear: both;"のようなタグを入れなければ、回り込みを解除できません。
一体どうなっているものかと仕組みについて調べてみると、まず画像を挿入するとimgタグがformで括られます。その理由は下記のサイトを参照。
The blog of H.Fujimoto:画像を挿入したときにformタグがつく理由
formはspanに置換され、imgタグのstyle属性で左右中央の位置が決められるようです。該当部分のソースを見てみると、MT/lib/MT/Asset/Image.pmにおいて
左位置
float: left;
margin: 0 20px 20px 0;
右位置
float: right;
margin: 0 0 20px 20px;
中央位置ならば
text-align: center;
display: block;
margin: 0 auto 20px;
というある意味微妙な実装になっています。おまけに勝手にマージンが決められているのも勘弁して欲しいですね。本来ならば、位置選択の段階でfloatにするかブロック要素にするのか選ばせてもらいたいものです。
左位置(ブロック)
display: block;
右位置(ブロック)
display: block;
text-align: left;
margin-left: auto;
margin-right:0;
という感じでしょうか。
がんばってこの部分のコードを書き換えてもいいのですが、推奨されない方法です。が、このためにプラグインを書くのも面倒な話です。MTはこういう決め打ち的なコードが多いですよね。