[解決済み】Bootstrap 3 モーダル縦位置センター
2022-04-15 03:43:15
質問
これは2つのパートからなる質問です。
-
モーダルの正確な高さがわからないときに、モーダルを垂直に中央に配置するにはどうしたらよいでしょうか。
-
モーダルを中央に配置し、モーダル-body に overflow:auto を指定して、モーダルが画面の高さを超える場合のみ表示することは可能でしょうか?
これを使ってみました。
.modal-dialog {
height: 80% !important;
padding-top:10%;
}
.modal-content {
height: 100% !important;
overflow:visible;
}
.modal-body {
height: 80%;
overflow: auto;
}
これは、コンテンツが縦方向の画面サイズよりはるかに大きい場合に必要な結果をもたらしますが、小さなモーダルコンテンツの場合はかなり使い物になりません。
解決方法は?
純粋なCSSによる解決策を思いつきました! しかし、ios, android, IE9+, chrome, firefox, desktop safari...でテストして動作することが確認されています。
私は以下のCSSを使用しています。
.modal-dialog {
position:absolute;
top:50% !important;
transform: translate(0, -50%) !important;
-ms-transform: translate(0, -50%) !important;
-webkit-transform: translate(0, -50%) !important;
margin:auto 5%;
width:90%;
height:80%;
}
.modal-content {
min-height:100%;
position:absolute;
top:0;
bottom:0;
left:0;
right:0;
}
.modal-body {
position:absolute;
top:45px; /** height of header **/
bottom:45px; /** height of footer **/
left:0;
right:0;
overflow-y:auto;
}
.modal-footer {
position:absolute;
bottom:0;
left:0;
right:0;
}
以下はフィドルです。 http://codepen.io/anon/pen/Hiskj
...複数のモーダルの場合、ブラウザに負担をかける余分な重いjavascriptがないため、これを正解として選択しました。
関連
-
[解決済み] CSS - div から画面の幅いっぱいまでオーバーフローさせる方法
-
[解決済み] マージン/パディングが機能しない
-
[解決済み] 要素を水平方向にセンタリングする方法
-
[解決済み] 絶対位置指定された要素をdivの中央に配置するにはどうしたらよいですか?
-
[解決済み] Twitter Bootstrapのメニューをクリックではなく、ホバーでドロップダウンさせる方法
-
[解決済み] Twitter Bootstrap 3を使用して列を中央に配置する
-
[解決済み] Bootstrap3による垂直方向の整列
-
[解決済み] Bootstrapのモーダルが背景の下に表示される
-
[解決済み] Bootstrapのモーダルを閉じる
-
[解決済み】display:flexを使って残りの縦幅をCSSで埋める。
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】@font-faceが機能しない。
-
[解決済み】サイドバーの位置を変更する
-
[解決済み] ユーザーエージェントのスタイルシートが私のCSSを上書きしないようにする方法
-
[解決済み] Chrome で注入されたスタイルシートによる奇妙なスタイリングが発生する
-
[解決済み] divを親の中で自動的に縦に重ねるにはどうしたらいいですか?
-
[解決済み] Bootstrapコンテナが複数またはネストされていませんか?
-
[解決済み] Bootstrap 4のclass="mb-0 "とは何ですか?
-
[解決済み] MUIでカスタムアニメーションエフェクト@keyframesを適用する方法は?
-
[解決済み] 幅・高さをピクセル単位からパーセント単位で設定する。
-
[解決済み] Atomエディタで透明な背景を設定する方法は?