WordPress「メディアと文章」のIE表示について
公開日:2019年07月17日
更新日:2019年07月18日
WordPressのGutenbergエディタの不具合について。(WordPress5.2.2 – 2019年7月17日時点)
ブロックエディタの「メディアと文章」ブロックをIE11で表示すると横並びにならない問題が発生します。
対応前表示結果
Chrome表示

IE11表示

メディアと文章のHTMLとCSS
HTML
<div class="wp-block-media-text alignwide">
<figure class="wp-block-media-text__media">
<img src="画像パス" alt="" class="wp-image-番号">
</figure>
<div class="wp-block-media-text__content">
<p>文章</p>
</div>
</div>
CSS
.wp-block-media-text {
display: grid;
grid-template-rows: auto;
align-items: center;
grid-template-areas: "media-text-media media-text-content";
grid-template-columns: 50% auto;
}
.wp-block-media-text .wp-block-media-text__media {
grid-area: media-text-media;
margin: 0;
}
.wp-block-media-text .wp-block-media-text__content {
word-break: break-word;
grid-area: media-text-content;
padding: 0 8%;
}
問題個所
IE11が「display: grid;」に対応していない。
ベンダープレフィックスの「-ms-」をつけて「display: -ms-grid;」指定してもバグがある。

対応方法
CSSで「display: grid;」を「display: flex;」に変更します。
また幅の設定はブロックの「高度な設定」「追加CSSクラス」を使って設定します。
「追加CSSクラス」の設定
「メディアと文章」ブロックを選択

右側「ブロック」パネル「高度な設定」で追加CSSクラスを入力
対応させるためのCSS
/* 「メディアと文章」をIEに対応させる */
body .wp-block-media-text { /* ポイント数を稼ぐためbody付与 */
display: flex;
}
/* 幅の設定は「追加クラス」で行う */
/* メディアの幅設定 */
.hogehoge.wp-block-media-text .wp-block-media-text__media {
width: 幅の値;
box-sizing: border-box;
}
/* 文章の幅設定 */
.hogehoge.wp-block-media-text .wp-block-media-text__content {
width: 幅の値;
box-sizing: border-box;
}
対応後表示結果
設定前とまったく同じ表示ではありませんが、ChromeとIE11の表示を整えることができます。
Chrome表示

IE11表示

同じカテゴリーのコンテンツ