[解決済み] Gmailやoutlookでサポートされているdisplay: gridに代わるものはありますか?
質問内容
しかし、メールでも使えるようにする必要があると言われました。Webでdisplay: gridに代わるものを探してみたのですが、見つかりませんでした。
そのような代替案は存在するのでしょうか? また、存在しない場合の提案もお願いします。
参考までに、私が作ったグリッドはこちらです。
<!DOCTYPE html>
<html>
<head>
<style>
.wrapper {
display: grid;
grid-template-columns: repeat(20, 1fr);
gap: 10px;
grid-auto-rows: minmax(30px, auto);
}
.one {
grid-column: 1 / 16;
grid-row: 1 / 9;
background-color: black;
}
.two {
grid-column: 16 / 21;
grid-row: 1 / 9;
background-color: red;
}
.three {
grid-column: 1/7;
grid-row: 9 / 12;
background-color: green;
}
.four {
grid-column: 15/21;
grid-row: 9/12;
background-color: blue;
}
.five {
grid-column: 1/11;
grid-row: 12/17;
background-color: yellow;
}
.six {
grid-column: 11/21;
grid-row: 12/17;
background-color: purple;
}
.seven {
grid-column: 7/15;
grid-row: 9/12;
background-color: gray;
}
</style>
</head>
<body>
<div class="wrapper">
<div class="one">One</div>
<div class="two">Two</div>
<div class="three">Three</div>
<div class="four">Four</div>
<div class="five">Five</div>
<div class="six">Six</div>
<div class="seven">text</div>
</div>
</body>
</html>
解決方法は?
をサポートしています。
CSS
または
Head-Style
は、Eメールでは45%程度とかなり低い。
を引用しています。CSS対応
そのため、全体としては
inline-style
を作成することができます。
どちらも
CSS-Grid
(~59% サポート) と
Flexbox
(~59% supported) は、メールクライアントから相応の支持を得ています。
を引用しています。CSS-Gridのサポート
を引用しています。フレックスボックスのサポート
を使用することです。
<table>
これは、HTMLソリューションであるため、100%確実にサポートされています。表形式データではありませんが、メールテンプレートとしては唯一完全にサポートされている方法なので許容範囲内です
引用:テーブルサポート
メールテンプレートです。
上述したように、テーブルを使用する必要があります。に相当するのは
grid-gap
の組み合わせになります。
border-collapse: seperate;
+
border-spacing: value;
テーブル自体に直接使用されます。
<table style="border-collapse: seperate; border-spacing: 10px;">
をエミュレートするために
grid-template-columns: repeat(20, 1fr);
まず、空の
<tr>
を20倍したものです。
<td width="5%">
を使用することができるようになりました。
colspan
-属性のように複数の列をまたぐことができます。
grid-column: spanX
を適用することで、min-heightをエミュレートすることができます。
height
-属性と同じです。
min-height
テーブルセルは、コンテンツが大きくなるとサイズが変更されるため、テーブルの場合は 30pxに行数をかけただけです。
テキストをテーブルセルの中央ではなく、左上から開始させるためには、適用する必要があります。
text-align:left; vertical-align:top;
をひとつひとつ
<td>
.
<table width="100%;" style="border-collapse: seperate; border-spacing: 10px;">
<tr>
<td width="5%;"></td>
<td width="5%;"></td>
<td width="5%;"></td>
<td width="5%;"></td>
<td width="5%;"></td>
<td width="5%;"></td>
<td width="5%;"></td>
<td width="5%;"></td>
<td width="5%;"></td>
<td width="5%;"></td>
<td width="5%;"></td>
<td width="5%;"></td>
<td width="5%;"></td>
<td width="5%;"></td>
<td width="5%;"></td>
<td width="5%;"></td>
<td width="5%;"></td>
<td width="5%;"></td>
<td width="5%;"></td>
<td width="5%;"></td>
</tr>
<tr height="240px">
<td colspan="15" style="background-color:black; color:white; text-align:left; vertical-align:top;">one</td>
<td colspan="5" style="background-color:red; text-align:left; vertical-align:top;">two</td>
</tr>
<tr height="90px">
<td colspan="6" style="background-color:green; text-align:left; vertical-align:top;">three</td>
<td colspan="8" style="background-color:gray; text-align:left; vertical-align:top;">text</td>
<td colspan="6" style="background-color:blue; text-align:left; vertical-align:top;">four</td>
</tr>
<tr height="150px">
<td colspan="10" style="background-color:yellow; text-align:left; vertical-align:top;">five</td>
<td colspan="10" style="background-color:purple; text-align:left; vertical-align:top;">six</td>
</tr>
</table>
関連
-
[解決済み] 必要なキーに一致するルートがありません。[:id]
-
[解決済み] Bootstrapのカラム内で画像を中央に配置する方法 [重複]について
-
[解決済み] HTML Divのボーダーが表示されない
-
[解決済み] 順序なしリストが div 内で左いっぱいに整列されない
-
[解決済み] HTMLボタンのテキストを固定幅で折り返すには?
-
[解決済み] margin-block-startとmargin-topの違いは何ですか?
-
[解決済み] Font Awesome アイコンをプレースホルダーで使用する
-
[解決済み] Railsアプリケーションにアイコンを追加する
-
[解決済み] HTMLで表示される上下の三角形(軸のない矢印)に使用できる文字は何ですか?
-
[解決済み] display: inlineとdisplay: inline-blockの違いは何ですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】CSSの背景画像が表示されない。
-
[解決済み】iframeの高さを100%にする方法【重複】。
-
[解決済み】divの高さを画面の残りスペースで埋めるようにする
-
[解決済み] div要素間の空白を削除する方法
-
[解決済み] CSS - display: none; が機能しない
-
[解決済み] カーソルを指ポインタに変更
-
[解決済み] will-change' や translateZ() ハックは 'transition: height' のパフォーマンスを向上させるか?
-
[解決済み] css画像が表示されない
-
[解決済み] HTML5 Canvas 要素でカスタムフォントを使用するにはどうすればよいですか?
-
[解決済み] Bootstrap 4 の mr-auto が正しく動作しない。