質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Flex

FlexはFlash PlayerやAdobe Airで動作するRIA(リッチインターネットアプリケーション)を開発する為のフレームワークです

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

2回答

762閲覧

flexで作った部分がIE11で印刷されない

time_

総合スコア16

Flex

FlexはFlash PlayerやAdobe Airで動作するRIA(リッチインターネットアプリケーション)を開発する為のフレームワークです

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

1クリップ

投稿2017/07/04 02:18

レスポンシブの2カラムをflexで構築し、その中(メインエリア)の一部に、定義リストを入れました。

定義リストもflexを利用しました。

IE11で印刷すると、「ページをまたぐ場合」、定義リストが反映されずに印刷されてしまいます。

これには何か原因があるのでしょうか。

イメージとして下記画像のとおりです。
イメージ説明

コードは、下記のとおりです。

<!-- コンテンツ全体 --> <div id="contents"> <!-- メイン --> <div id="main"> メインエリア </div> <!-- サイド --> <div id="side"> サイドバーエリア </div> </div> /* コンテンツ全体 */ #contents { width: 100%; max-width: 1080px; margin-left: auto; margin-right: auto; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; } /*メイン*/ #main { -webkit-flex: 1; flex: 1; margin-right: 20px; padding: 0; } /*サイド*/ #side { width: 250px; } @media screen and (max-width: 767px) { #contents { display: block; } #main, #side { margin: 0; padding: 0 30px; width: 100%; } }
【メインエリアに入れた定義リスト】 <div class="test"> <dl> <dt>項目名①</dt> <dd>内容や説明文</dd> <dt>項目名②</dt> <dd>内容や説明文</dd> <dt>項目名③</dt> <dd>内容や説明文</dd> <dt>項目名④</dt> <dd>内容や説明文</dd> <dt>項目名⑤</dt> <dd>内容や説明文</dd> <dt>項目名⑥</dt> <dd>内容や説明文</dd> (略) </dl> </div> .test { margin: 0 0 1em 0; } .test dl { display: flex; flex-wrap: wrap; border: 1px solid #ccc; } .test dl, .test dt, .test dd { box-sizing: border-box; } .test dt { margin: 0; padding: 10px; border-top: 1px solid #ccc; } .test dd { margin: 0; padding: 10px; border-top: 1px solid #ccc; } .test dt:first-of-type, .test dd:first-of-type { border-top: none; } .test dt { width: 30%; background: #eee; } .test dd { width: 70%; border-left: none; } @media only screen and (max-width: 767px) { .test dt { width: 100%; background: #eee; } .test dd { width: 100%; border-top: none; border-bottom: none; } }

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

単純にIE11の印刷バグと思われます。
IEに限らず、他ブラウザでも要素途中でページをまたぐとおかしな印刷になりやすいので、
要素の途中でページをまたがないようにpage-break-beforepage-break-afterpage-break-insideなどで調整してみてはどうでしょうか?
http://caniuse.com/#search=page-break

投稿2017/07/04 07:26

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

time_

2017/07/05 11:51

ありがとうございます。 返信遅くなりすみません。 そうなんですね。 Chromeの拡張(プラグイン)でキャプチャして、先方に送っていたのですが、 それでは納得しないお相手も出てきて悩んでました。 もう少しだけ、この質問をオープンにしたいと思いますm(__)m
guest

0

お世話になっております。

ご回答頂いた後も、色々いじっておりましたらIE11ならびにfirefoxでも上記エラーが発生しました。

元々、大枠の2カラム、その中の定義リストをflexで対応しておりました。

これを……大枠の2カラムだけをfloatでの処理をしましたら、印刷で崩れることはなくなりました。

全てflex処理できれば、この上なく嬉しいのですが、現状はこことおりやっていこうと思いますm(__)m

投稿2017/07/15 07:15

time_

総合スコア16

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問